国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網 會員登陸 & 注冊

mapbox-gl:圖層過濾顯示

2022-06-21 09:02 作者:地理信息技術雜談  | 我要投稿

在mapbox-gl中加載圖層時,要控制顯示和隱藏其中的某些元素,需要使用mapbox-gl的圖層過濾接口。
每種類型圖層的layout中有visibility屬性,但是這個在api文檔中,只支持基本函數,達不到控制圖層中特定元素顯示和隱藏的功能,只能控制當前圖層全部元素的顯示和隱藏。
map.setLayoutProperty('圖層id', 'visibility','枚舉屬性');

mapbox-gl圖層過濾有單獨的api說明setFilter:
https://docs.mapbox.com/mapbox-gl-js/api/map/#map#setfilter根據圖層中的數據屬性,控制圖層my-layer中名稱為name的元素顯示:
map.setFilter('my-layer', ['==', ['get', 'name'], 'name']);

如要控制多個元素的顯示和隱藏,可以使用多條件控制語句,示例中是顯示名稱不是name1、name2的其他元素:

map.setFilter('my-layer', [?"all",? ["!=", ["get", "name"], "name1"], ["!=", ["get", "name"], "name2"]?]);

mapbox-gl的表達式語句參照官方說明文檔:
https://docs.mapbox.com/mapbox-gl-js/style-spec/expressions/圖層過濾還能控制數據源中的空間類型,在mapbox-gl中加載的一個geosjon數據源中包含多種幾個空間類型,如point、linestring和polygon,使用過濾語句,可以在加載圖層時,設置加載某一類型的數據,寫法如下:

map.addLayer({

? ? ?id: 'measure-points',

? ? ? ?type: 'circle',

? ? ? ? source: 'geojson',

? ? ? ? paint: {

? ? ? ? 'circle-radius': 5,

? ? ? ? 'circle-color': '#000'

? ? ? ? ?},

?? ? ??//加載點數據源

? ? ? ?filter: ['in', '$type', 'Point']

? ? ?});

mapbox-gl提供的圖層方式,還是能夠很方便的控制圖層元素的操作,更多使用的方式參見官方的API文檔。

參考文檔:

https://docs.mapbox.com/mapbox-gl-js/example/measure/

https://docs.mapbox.com/mapbox-gl-js/style-spec/expressions/

https://docs.mapbox.com/mapbox-gl-js/style-spec/layers/


mapbox-gl:圖層過濾顯示的評論 (共 條)

分享到微博請遵守國家法律
兴安盟| 阿拉尔市| 玉环县| 双柏县| 东阳市| 正宁县| 桂平市| 西乌| 奉新县| 翼城县| 南投县| 仁怀市| 吉安县| 耿马| 翁源县| 绥化市| 宁阳县| 霞浦县| 通海县| 康乐县| 抚顺县| 眉山市| 宽城| 永仁县| 河曲县| 舞阳县| 东至县| 祥云县| 株洲县| 普宁市| 万年县| 石楼县| 太仓市| 临朐县| 万载县| 富源县| 柏乡县| 方正县| 依安县| 屯留县| 正定县|