是否可以查询未显示的功能?

15

请问是否有一种方法可以查询没有在地图上显示的要素。

queryRenderedFeaturesquerySourceFeatures仅在地图上显示功能时才有效。

我还尝试了使用setLayoutProperty设置可见性以及使用setFilter隐藏功能。但是,查询时都不返回要素。

示例


欢迎来到Stackoverflow!为了更好地利用本网站,重要的是提出好的问题。关于如何提问的指南请参见:http://stackoverflow.com/help/how-to-ask - Stephen Rauch
1个回答

8

MapboxGL只请求当前视口和缩放级别的瓦片。如果通过map#queryRenderedFeaturesmap#querySourceFeatures都无法获得,那么你的MapboxGL地图没有你正在查找的数据。


3
我通过使用原始数据创建一个带有搜索所需值、唯一键和经纬度的 JSON 文件来解决了这个问题。然后我只需使用简单的 JSON 搜索,缩放到经纬度,然后使用唯一键查询地图要素。在缩放后可能需要等待所有要素呈现出来……不幸的是,通过 settimeout 实现。 - malcolm
看这个例子...在开发的早期阶段 https://www.ovrdc.org/apps/mapbox-parcel-viewer.html - malcolm
我曾经担心我不得不像@malcolm一样使用某些东西。最终,我不能仅在Mapbox上拥有所有数据,我必须依赖其他数据源来使地图导航到正确的位置=/ - thiagoxvo
1
所有这些都说了,如果Mapbox在后端使用mbtiles,那么这只是一个SQLite数据库...只是不确定它是否可以被查询,如果可以的话,那就必须在服务器端进行。这绝对是mbtiles/矢量瓦片/Mapbox地图平台中缺失的关键环节。 - malcolm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接