我有一个 geojson 表示插值天气数据的等高线层。 某些轮廓在更高的缩放级别消失,如以下屏幕抓图所示。
将多边形作为图层添加到 Mapbox 时,使用以下代码:
map.addSource('mintempContour', {
type: 'geojson',
data: geojson_source
});
map.addLayer({
"id": 'mintemp',
"type": "fill",
"minzoom": 2,
"maxzoom": 15,
"source": "mintempContour",
"layout": {
'visibility': 'visible'
},
"paint": {
"fill-color": { type: 'identity', property: 'fill' },
"fill-opacity": 1
}
//"filter": ["==", "$type", "Polygon"]
}, 'water');
我已经在 geojson.io 等网站上测试了 geojson 文件,轮廓在所有缩放级别都保持可见。
我希望所有轮廓始终存在,无论缩放级别如何。我怎样才能解决这个问题?
快速而肮脏的 JSFiddle 复制问题: https://jsfiddle.net/stefmarais/ae9nzmrt/12/
最佳答案
您在调用 addLayer
时设置了 maxZoom
,根据文档的说法:
The maximum zoom level for the layer. At zoom levels equal to or greater than the maxzoom, the layer will be hidden. https://docs.mapbox.com/mapbox-gl-js/style-spec/#layer-maxzoom
我认为你实际上想在源上设置 maxzoom
,而不是图层:
Maximum zoom level at which to create vector tiles (higher means greater detail at high zoom levels). https://docs.mapbox.com/mapbox-gl-js/style-spec/#sources-geojson-maxzoom
(或者根本没有)。
关于geojson - Mapbox gl geojson 图层在更高的缩放比例下消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54437818/