2

我在社交网站上使用 Mapbox 制作动态地图。

我添加了一个卫星切换按钮,但我在 API 文档中找不到任何关于如何像谷歌地图那样从地形视图切换到卫星视图的方法?

它隐藏在某个地方吗?我知道我必须订阅并且我会订阅,但我需要知道我可以实时从地形切换到卫星,而不会丢失我的标记等。

假设我有一张简单的地图:

var initialLocation = [40.97, 64.07];
var initialZoomLevel = 2;

var map = L.mapbox.map('map_container').setView(initialLocation, initialZoomLevel);

如何从地形切换到卫星?

有什么建议么?

谢谢!

4

2 回答 2

7

添加卫星视图非常容易 - 只是没有很好的记录。一个先决条件是您必须有一个付费帐户(更新:您曾经需要一个付费帐户 - 现在似乎不再是这种情况)并且在您的帐户中设置了您自己的地图并选择了卫星图像。

var initialLocation = [40.97, 64.07];
var initialZoomLevel = 2;

var map = L.mapbox.map('map_container').setView(initialLocation, initialZoomLevel);
L.control.layers({  
    "Street": map.tileLayer,
    "Satellite": L.mapbox.tileLayer("my satellite imagery map id")
}, null).addTo(map);

这会在右上角添加一个控件(默认情况下),允许您在默认地图和卫星地图之间进行选择。

于 2014-05-08T13:52:42.660 回答
2

MapBox 没有“模式”的概念,只有不同的地图,每个地图都有自己的地图 ID。因此,在http://tiles.mapbox.com/newmap上根据地形创建地图,然后根据卫星图像创建另一个地图。使用它们各自的 ID 使用第二个参数在它们之间切换L.mapbox.map(参见http://www.mapbox.com/mapbox.js/api/#L.mapbox.map )。

于 2013-06-17T15:44:13.200 回答