我正在使用 Uber H3 库。使用多边形填充功能,我为特定分辨率填充了一个带有 H3 索引的区域。但我不需要所有索引。我想识别并删除那些在丛林、湖泊、池塘等偏远地区绘制的索引。关于如何实现这一点有什么想法吗?我想,如果我可以将一个城市中的所有建筑物映射到它们各自的索引中,我就可以轻松识别那些没有映射建筑物的索引。我会维护一个h3索引的Hashmap作为键,并将位于该索引中的坐标列表作为值。
问问题
310 次
1 回答
0
为了解决这个问题,您需要一些其他数据集。在哪里可以找到这些数据很大程度上取决于您正在查看的城市,但简单的谷歌搜索足迹数据应该提供一些选项。
获得足迹数据后,根据您使用的网格的分辨率和性能要求,有多种选择。
- 您可以
polyfill
每个足迹并保留生成的六边形 - 对于较粗略的数据,仅
geoToH3
用于获取每个建筑物多边形中每个顶点的六边形会更快 - 如果足迹明显小于您的十六进制大小,您可能只需要从每个建筑物中获取一个坐标。
一旦你有了每个建筑物的六边形,你可以简单地用你的多边形六边形和你的建筑六边形做一个设置交集,以获得“好”的集合。但在许多情况下,删除坏的六边形而不是包含好的六边形可能更容易——在这种情况下,您需要一个非建筑特征的数据集,例如水和公园特征,然后做相反的事情:填充不需要的特征,然后从你的集合中减去这些六边形。
于 2020-09-23T17:37:30.420 回答