在添加未知的矢量切片服务时,我们是否可以获得可以获取源的元信息以了解图层ID和图层类型的功能?

时间:2016-06-17 06:33:01

标签: mapbox mapbox-gl-js

在添加未知的矢量图块服务时,我们是否可以使用能够获取源的元信息以列出图层的id和图层类型的功能?我认为这些可以帮助我们以正确的方式设置矢量服务的样式,并且可以为不同的层(点 - 圆,多边形 - 填充,线 - 线)创建默认样式。

2 个答案:

答案 0 :(得分:1)

您可以致电id查找当前样式中定义的图层。

以下是获取每个图层的typevar map = new mapboxgl.Map({ container: 'map', style: 'mapbox://styles/mapbox/light-v9', zoom: 13, center: [-122.447303, 37.753574] }); map.on('load', function () { var layersMeta = map.getStyle().layers .map(function(layer) { return [layer.id, layer.type]; }); console.log(layersMeta); }); 的方法:

String teacher = "";

这是the corresponding jsfiddle。看一下控制台。

答案 1 :(得分:1)

遗憾的是,没有标准方法列出矢量切片源中的所有图层。 Mapbox源在其TileJSON中提供了vector_layers对象,但由于此功能不是标准的,因此在GL JS API中不可用。