2016-12-01 161 views
1

我是使用Mapbox的新手。Mapbox - 我的图层ID是什么?

我想添加一个新图层到我的地图上面的水层,但低于标签。

map.addLayer({ 
    'id': 'maine', 
    'type': 'fill', 
    'source': 'maine', 
    'layout': {}, 
    'paint': { 
     'fill-color': '#088', 
     'fill-opacity': 0.8 
    } 
}, 'water'); 

(此代码是从Mapbox一些示例代码获得。)

眼下,这创造了一个层,其水层和标签的下方。但是,我无法弄清楚什么图层ID会将它带到水层之上。

这是样式表我使用:

mapbox://styles/mapbox/light-v9 

如何找到其他有效层ID的这个样式表?我尝试过“街道”,“道路”,“道路”,“土地”等,但都没有成功。我觉得这个环节囊括了所有的图层名称:

https://www.mapbox.com/studio/styles/mapbox/light-v9/

,但它保留我的新层从摆明一切的顶部是“水”的只有一个。帮帮我!

+0

如果我的问题没有帮助,你可以发布你的代码的实例吗? – RobLabs

回答

0

您可以在Mapbox.com/studio中通过将您的maine瓷砖组添加到新样式中进行试验,然后您可以交互式移动该图层以试验并验证所需的效果。

addLayer的第二个参数是before,所以您的maine源应该已经在water层之前走了。查看addLayer的文档的详细信息

https://www.mapbox.com/mapbox-gl-js/api/#Map#addLayer


"id"在Style.json确定的层的名称。

您可以通过该链接找到层的名称您发布

water图层靠近Mapbox灯光样式的图层堆栈的底部。

这里是"id中的水层。

 "id": "waterway-river-canal", 
     "id": "water shadow", 
     "id": "water", 
     "id": "waterway-label", 
     "id": "water-label", 
0

您可以通过在Mapbox Studio中打开您的地图找到您的图层ID。如果你去View style details(左边窗口右上角有一个箭头的框,它会显示所有图层)