【问题标题】:OSM Overpass API: Complete boundary dataOSM Overpass API:完整的边界数据
【发布时间】:2016-10-01 08:58:39
【问题描述】:

我正在尝试确定是否可以使用 OverpassAPI 下载一个国家/地区的所有边界数据。

小例子:卢森堡 我想获取所有标记为(键值)边界=管理的关系。我想接收这些关系的所有方式,以及这些方式的所有节点。

我认为这可能是相当多的数据(?)所以我想知道一个查询是否是要走的路,特别是如果我想尝试对德国或法国进行查询(在 admin_level=4 上有大约 20 个项目,和数百个在 admin_level=6 或 8)

这更加复杂,因为全国范围内的边界框包含与“收件箱”共享边界的所有其他国家/地区。

所以这似乎不是方法 - 我将使用什么技术来获取所有节点上的所有节点,形成一个国家的行政边界?

我目前正在尝试的是这个

<osm-script>
  <query type="relation">
    <bbox-query s="49" w="2" n="52" e="7"/>
    <has-kv k="boundary" v="administrative"/>
    <has-kv k="admin_level" v="2"/>
  </query>
  <print mode="meta"/>
</osm-script>

这是比利时的边界框(比如中等大小),并且限制为 admin_level=2。此外,这还没有传递节点信息。

我知道如何改变这一点 - 但这也将提供所有邻国。有什么更好的方法来做到这一点?

谢谢! 拉尔夫

【问题讨论】:

    标签: openstreetmap overpass-api


    【解决方案1】:

    我建议改为查看 OSM 边界地图,这是一个专门用于全球边界的应用程序,几乎可以在您能想到的任何级别上进行:https://wambachers-osm.website/boundaries

    在任何情况下,主立交桥 api 实例都有相当多的负载,运行以下查询以获取德国的所有路径和节点时,您可能会遇到 HTTP 429 错误:

    (rel(51477);&gt;;);out meta;

    或:

    (rel[boundary=administrative][admin_level=2][name="Deutschland"];&gt;;);out meta;

    要获得与卢森堡所有路径和节点的所有边界=管理关系,应该执行以下查询(注意:返回 47 MB​​ 的数据,包括德国、莱茵兰-帕拉丁和萨尔州)。

    rel(2171347); map_to_area; (rel[boundary=administrative](area);>;); out meta;

    也可以试试this alternative

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-12
      • 1970-01-01
      • 2022-11-04
      • 2017-06-03
      相关资源
      最近更新 更多