我们目前正在从geojson数据中将图层加载到mapbox GL中。如果我们的geojson有一个包含点和多边形的特征集合,那么由于你需要如何设置图层类型,似乎没有办法让mapbox gl显示。
有没有办法让图层有多种类型?似乎它无法处理多个。
map.addLayer({
"id": "route",
"type": "line", //THIS SEEMS TO BE THE LIMITATION
"source": "route",
});
答案 0 :(得分:4)
你是对的,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"]
});