我已经将Leafbox与Leaflet一起使用了很长时间.最近,Mapbox地图停止加载.发生了什么?
这是用于加载Mapbox的磁贴的.js代码:
var map = new L.map('map', {
center: new L.LatLng(42.352455, -71.048069),
zoom: 13,
maxZoom: 17,
layers: new L.TileLayer('http://a.tiles.mapbox.com/v3/mapbox.mapbox-streets/{z}/{x}/{y}.png')
});
Run Code Online (Sandbox Code Playgroud) 我正在使用Mapbox在社交网站上创建动态地图.
我添加了一个卫星切换按钮,但我在API文档中找不到任何关于如何从地形视图切换到卫星视图的方法,如谷歌地图吗?
它隐藏在某个地方吗?我知道我必须订阅而且我会,但我需要知道我可以实时从地形切换到卫星而不会丢失我的标记等.
假设我有一张简单的地图:
var initialLocation = [40.97, 64.07];
var initialZoomLevel = 2;
var map = L.mapbox.map('map_container').setView(initialLocation, initialZoomLevel);
Run Code Online (Sandbox Code Playgroud)
我怎么能从地形切换到卫星?
有什么建议?
谢谢!
我有一张有很多积分的地图(60k).它们分布在21个不同的层中.(这是一张人口统计散点图.)
我正在出口到变焦范围为11-15的mbtiles.地理区域约700平方英里.
我只导出点,而不是任何底层底图.据说,这应该只生成一个1-10mb的文件.但是我要等半小时来烘烤瓷砖.
那不寻常吗?
我正在从传单+ cloudmade转移到mapbox,并在必要时对我的代码进行了少量重写.我正在刷新我的地图,在我之前的文章中,最简单的方法是将每个标记添加到它自己的图层中,然后刷新以删除所有图层并重绘标记.
这是我目前的代码:
function setLeafletMarker(lat, lng, iconType, popupHTML) {
popupHTML = typeof popupHTML !== 'undefined' ? popupHTML : "";
var LamMarker = new L.Marker([lat, lng], { icon: iconType }); //.on('click', markerClick); ;
markers.push(LamMarker);
LamMarker.bindPopup(popupHTML);
map.addLayer(LamMarker);
}
Run Code Online (Sandbox Code Playgroud)
我怀疑这与问题有关,就是当我将鼠标光标放在标记上时,它会像手一样(可拖动)而不是变成尖尖的手指,这意味着标记是可点击的.点击工作正常,但它不是很直观.如何将手改为尖手指?
我想将Google地方添加到我网站上的Mapbox地图中.我不预先获取,获取或存储它们在任何数据库中.是否可以使用API在我的自定义地图上发布地点,或者我是否违反了Google地图使用条款?
/**@name捕获地图视图的快照*/
/**拍摄地图视图的快照.默认情况下,还会捕获包含任何可见注释的叠加层.@return描绘地图视图的图像.*/
- (UIImage *)takeSnapshot;
Run Code Online (Sandbox Code Playgroud)
/**拍摄地图视图的快照.
@param includeOverlay是否包含包含任何可见注释的叠加层.
@return描绘地图视图的图像.*/
- (UIImage *)takeSnapshotAndIncludeOverlay:(BOOL)includeOverlay;
Run Code Online (Sandbox Code Playgroud) 我正在学习使用react和mapbox,但我正在努力解决为什么我的mapbox地图在通过React加载时无法正确呈现.当我正常加载它(没有React.js)时,没有问题,因为下面的代码工作并且地图正常显示:
<script src="https://api.tiles.mapbox.com/mapbox.js/v2.1.5/mapbox.js"></script>
<link rel="stylesheet" href="https://api.tiles.mapbox.com/mapbox.js/v2.1.5/mapbox.css"/>
<div> id="map"></div>
<script>
var map = L.mapbox.map('map', 'blabla.blabla').setView([lat, long], 9);
</script>
Run Code Online (Sandbox Code Playgroud)
但是当我按照以下方式进行操作时,地图通常根本不显示,或者当它出现时,我只看到div左上角的一部分.
<script src="path/to/react.js"></script>
<script src="https://api.tiles.mapbox.com/mapbox.js/v2.1.5/mapbox.js"></script>
<link rel="stylesheet" href="https://api.tiles.mapbox.com/mapbox.js/v2.1.5/mapbox.css"/>
<div id="react-content">
<script src="path/to/react/content.js'></script>
</div>
//now inside react/content.js, there is a mapbox component inside an outer component. I'm leaving out the rest of the code to save space, and I believe that I am rendering the OuterComponent and the MapBoxMap component correctly inside that.
var MapBoxMap = React.createClass({
componentDidMount: function() {
L.mapbox.accessToken = this.props.accessToken;
var …Run Code Online (Sandbox Code Playgroud) 我正在使用MapBox方向与Android,我试图获取方向,以便稍后在地图上绘制.
但是,我从调用中得到的响应永远不能用作response.body()返回null.
当我调用response.code()时,我得到状态代码422,根据Mapbox API意味着"给定的请求无效.响应的消息密钥将保存无效输入的解释".
response.message()返回字符串"Unknown".
response.errorBody()返回字符串"okhttp3.ResponseBody$1@38fb6f04"
我使用了相同的代码,因为这个堆栈溢出应答应该可行,但事实并非如此.任何帮助,将不胜感激.
继承我的方法:
private void getRoute(Position origin, Position destination) throws ServicesException {
MapboxDirections client = new MapboxDirections.Builder()
.setOrigin(origin)
.setDestination(destination)
.setProfile(DirectionsCriteria.PROFILE_CYCLING)
.setAccessToken("Same access token as the map uses")
.build();
client.enqueueCall(new Callback<DirectionsResponse>() {
@Override
public void onResponse(Call<DirectionsResponse> call, Response<DirectionsResponse> response) {
// You can get the generic HTTP info about the response
Log.d(TAG, "Response code: " + response.code());
if (response.body() == null) {
Log.e(TAG, "No routes found, make sure you set the right …Run Code Online (Sandbox Code Playgroud) 地图`像这样:
L.Map = L.Map.extend({
openPopup: function(popup) {
this._popup = popup;
return this.addLayer(popup).fire('popupopen', {
popup: this._popup
});
}
});
Run Code Online (Sandbox Code Playgroud)
但我正在使用传单.无论如何都有这样的程度,以便我可以阻止关闭我的标记弹出窗口?
L.mapbox.accessToken = constant.accessToken;
var map = L.mapbox.map('map', 'mapbox.streets', {zoomControl: true});
Run Code Online (Sandbox Code Playgroud) mapbox ×10
javascript ×4
leaflet ×4
android ×1
directions ×1
google-maps ×1
ios ×1
jquery ×1
map ×1
objective-c ×1
privacy ×1
reactjs ×1
tilemill ×1
xcode ×1