按面积过滤多边形

时间:2019-08-28 17:19:48

标签: openstreetmap

我尝试按区域过滤.osm的多边形。 现在是关于瑞士湖泊。我使用“自然=水”过滤器提取了所有多边形,但仍然有瑞士的所有池塘。因此,我尝试使用多边形的面积添加过滤器。 我该怎么办?

我已经搜索了一些解决方案,但是找不到很好的答案。 我发现最好的是this question,但我不知道应该在哪里执行它以及它是否与osm数据兼容。

感谢您的回答

1 个答案:

答案 0 :(得分:0)

解决此问题的一种方法是使用Atlas。这是您需要执行的步骤(带有指向其他相关SO内联链接的链接):

  1. 使用osmosis将您的OSM文件转换为.osm.pbf
  2. 使用atlas-shell-tools.osm.pbf子命令将pbf2atlas加载到Atlas文件中
  3. 编写一个小的Java类,打开Atlas文件,先使用TaggableFilter,再使用filters them by area, using Polygon.getSurface()获取所有湖泊。