我们目前正在从geojson数据中将图层加载到mapbox GL中。如果我们的geojson具有包含点和多边形的要素集合,则由于需要设置图层类型,因此似乎没有办法同时显示mapbox gl。
是否有一种方法可以使图层具有多种类型?似乎无法处理多个。
map.addLayer({
"id": "route",
"type": "line", //THIS SEEMS TO BE THE LIMITATION
"source": "route",
});
您是正确的,GL JS无法处理每层多种类型。
但是,您可以通过创建多个图层来从一个来源显示多种几何类型:
map.addLayer({
"id": "route-line",
"type": "line",
"source": "route",
"filter": ["==", "$type", "LineString"]
});
map.addLayer({
"id": "route-point",
"type": "circle",
"source": "route",
"filter": ["==", "$type", "Point"]
});
map.addLayer({
"id": "route-fill",
"type": "fill",
"source": "route",
"filter": ["==", "$type", "Polygon"]
});