mapbox - 仅使用 fetch API 从 mapbox 获取建筑物多边形点
问题描述
我尝试从要素中获取建筑物几何坐标多边形,但如果没有 javascript 方法 queryRenderedFeatures 或 SourceFeatures,我似乎无法找到一种方法。这个问题从 mapbox api 获取建筑信息使用 javascript 方法,但我想要一些可以使用链接的东西,我可以从中获取 json。
我设法接近了这样的事情: https ://api.mapbox.com/v4/mapbox.mapbox-streets-v8/tilequery/27.598505,47.162098.json?radius=30&layers=road,poi_label,building,geometry&access_token =ACCESS_TOKEN_HERE。但这有一个重大缺陷:它只返回几何作为一个点:
{"type":"FeatureCollection","features":[{"type":"Feature","id":235028771,"geometry":{"type":"Point","coordinates":[27.598497434198464,47.16209573500234],"type":"building"...}}
您可以观察到即使它是建筑物,它也会返回一个点。有没有办法做到这一点?queryRenderedFeatures 方法确实返回一个多边形。不知何故,信息到达了我查询的 Map 对象,但我如何通过 api 获取该信息?
解决方案
你试图做的事情是不可能的。Mapbox 不提供完整的多边形数据集。充其量,有一些方法可以从矢量瓦片集中检索多边形(例如query-remote-tiles,它的功能类似于 TileQuery)。但是这些只会检索给定矢量切片中的多边形部分,这可能不是您想要的。(queryRenderedFeatures 有同样的问题)。
推荐阅读
- excel - 读取excel中的字母数字最后一位
- java - 如何访问事件监听器类中的变量?
- haskell - 如何添加依赖项并使其对 Haskell 中的 Intero 可见
- angular - 使用多个主题时对应用程序性能的影响 [rxjs]
- react-native - React-Native 刷新 Flatlist 不适用于 Android
- c# - 为什么 ConfigurationFile 返回 appname.exe.Config 大写“C”?
- .net - vb 在不打开新表单(或窗口)的情况下显示另一个页面
- excel - excel/电子表格网格的术语
- rabbitmq - RabbitMQ 和 Camel 2.21.1 自动确认,即使 autoAck=false
- python - 在 Python 3 中提高 FPS(使用 Pygame 渲染数千种东西)