mapbox:禁用一个功能渲染
mapbox: disable one feature rendering
在我的例子中,我只想禁用一个挤压建筑的渲染,我正在寻找这样的东西
map.on('load', function () {
map.addLayer({
'id': '3d-buildings',
'source': 'mapbox',
'source-layer': 'building',
"filter": ["!=", "id", "12345"],
'type': 'fill-extrusion',
'paint': {
'fill-extrusion-color': '#bbb',
'fill-extrusion-height': 10,
'fill-extrusion-base': 0,
'fill-extrusion-opacity': 1
}
});
})
以下表达式不正确:
"filter": ["!=", "id", "12345"]
mapbox-gl-0.44.1
过滤器从当前要素的属性中检索 属性 值。确保建筑物 ID 在属性中:
{
"type": "Feature",
"properties": {
"id": "12345",
"base_height": 30,
"height": 40
},
"geometry": {...}
}
}
更新:Gets the feature's id, if it has one:["id"]
。当然,您需要考虑可能的标识符类型:
"filter": ["!=", ["id"], 12345]
例如点击建筑物将其隐藏:[ https://jsfiddle.net/yedg641a/ ]
在我的例子中,我只想禁用一个挤压建筑的渲染,我正在寻找这样的东西
map.on('load', function () {
map.addLayer({
'id': '3d-buildings',
'source': 'mapbox',
'source-layer': 'building',
"filter": ["!=", "id", "12345"],
'type': 'fill-extrusion',
'paint': {
'fill-extrusion-color': '#bbb',
'fill-extrusion-height': 10,
'fill-extrusion-base': 0,
'fill-extrusion-opacity': 1
}
});
})
以下表达式不正确:
"filter": ["!=", "id", "12345"]
mapbox-gl-0.44.1
过滤器从当前要素的属性中检索 属性 值。确保建筑物 ID 在属性中:
{
"type": "Feature",
"properties": {
"id": "12345",
"base_height": 30,
"height": 40
},
"geometry": {...}
}
}
更新:Gets the feature's id, if it has one:["id"]
。当然,您需要考虑可能的标识符类型:
"filter": ["!=", ["id"], 12345]
例如点击建筑物将其隐藏:[ https://jsfiddle.net/yedg641a/ ]