我想讓我的元素基于縮放。當縮小到 19 時我不需要它可見,因為我的地圖看起來不太好。我嘗試使用maxResolution從layers.js文件派生的方法,當發現它時,因為整個地圖是由QGIS2web插件生成的。不幸的是它不起作用我也嘗試了該minZoom功能,但沒有成功。我在這里找到的所有合理的例子:https://openlayers.org/en/latest/apidoc/module-ol_View.htmlhttps://openlayers.org/en/latest/examples/layer-zoom-limits.htmlhttps://github.com/Viglino/ol-ext/issues/51另一個線程說有關更改 maxResolution 值,但它也不起作用。https://gis.stackexchange.com/questions/160725/vector-layer-visibility-using-min-maxresolution-is-not-working-in-openlayers-2最后,我的代碼如下所示: var tekst2 = new ol.Overlay({ position: pos3, minZoom: 19, element: document.getElementsByClassName('tekscio')[1], }); map.addOverlay(tekst2);我發現, minZoom 主要指的是地圖畫布的縮放下限。但這個配置: var tekst2 = new ol.Overlay({ position: pos3, element: document.getElementsByClassName('tekscio')[1], maxResolution:0.42006699228392946, }); map.addOverlay(tekst2);也沒有用。我還在這里找到了一些方法:http://dev.openlayers.org/releases/OpenLayers-2.13.1/doc/apidocs/files/deprecated-js.htmlhttp://dev.openlayers.org/docs/files/OpenLayers/Layer/FixedZoomLevels-js.html#OpenLayers.Layer.FixedZoomLevels.getOLZoomFromMapObjectZoom但看起來它們已被棄用。我應該在這段代碼中做什么?這里還需要提供我所缺少的其他東西嗎?我想要基于縮放級別的文本。以防萬一我在這里發送帶有 javascript 代碼的 JS 小提琴:https://jsfiddle.net/uxkcyomf/
Openlayers 基于縮放的對象可見性不起作用
慕斯王
2023-09-21 16:34:23