querySourceFeatures returns 空数组
querySourceFeature returns empty array
我正在使用 mapbox 尝试查询 mapbox tileset 的所有功能,并将它们 return 作为 geojson。据我了解,要查询屏幕上不可见的功能,您必须使用 querysourcefeatures。我的 tileset 仅在缩放 14 时显示,因此我无法一次查询数据集中的所有要素然后应用过滤器。这可能吗?它仍然像 querySourceFeatures returns 一个空数组。
function addLayers() {
map.addSource('plutonew-c03oxi', {
'type': 'vector',
'url': 'mapbox://samtpr.4ehwzn0r'
});
map.addLayer({
"id": "parcels_fill",
"type": "fill",
"source": "plutonew-c03oxi",
"source-layer": "plutonew-c03oxi",
'layout': {
'visibility': 'visible'
},
paint: {
'fill-color': 'blue',
'fill-outline-color': 'gray',
"fill-opacity": ["case",
["boolean", ["feature-state", "hover"], false],
0.5,
0
]
}
});
var features = map.querySourceFeatures('plutonew-c03oxi', {filter: ["==", ['get','ZIPCODE'], zipcode_val]});
From what I understand, to query features that are no visible on the screen, you must use querysourcefeatures
你可能误会了。 querySourceFeatures
允许您查询当前加载并可在当前视口和缩放级别中显示的矢量图块中存在的要素。然而,与 queryRenderedFeatures
不同的是,它们实际上不必通过可见层进行渲染。
在这种情况下,您似乎希望获得在当前缩放级别下不可用的功能的访问权,这是不可能的。
我正在使用 mapbox 尝试查询 mapbox tileset 的所有功能,并将它们 return 作为 geojson。据我了解,要查询屏幕上不可见的功能,您必须使用 querysourcefeatures。我的 tileset 仅在缩放 14 时显示,因此我无法一次查询数据集中的所有要素然后应用过滤器。这可能吗?它仍然像 querySourceFeatures returns 一个空数组。
function addLayers() {
map.addSource('plutonew-c03oxi', {
'type': 'vector',
'url': 'mapbox://samtpr.4ehwzn0r'
});
map.addLayer({
"id": "parcels_fill",
"type": "fill",
"source": "plutonew-c03oxi",
"source-layer": "plutonew-c03oxi",
'layout': {
'visibility': 'visible'
},
paint: {
'fill-color': 'blue',
'fill-outline-color': 'gray',
"fill-opacity": ["case",
["boolean", ["feature-state", "hover"], false],
0.5,
0
]
}
});
var features = map.querySourceFeatures('plutonew-c03oxi', {filter: ["==", ['get','ZIPCODE'], zipcode_val]});
From what I understand, to query features that are no visible on the screen, you must use querysourcefeatures
你可能误会了。 querySourceFeatures
允许您查询当前加载并可在当前视口和缩放级别中显示的矢量图块中存在的要素。然而,与 queryRenderedFeatures
不同的是,它们实际上不必通过可见层进行渲染。
在这种情况下,您似乎希望获得在当前缩放级别下不可用的功能的访问权,这是不可能的。