【问题标题】:Is it possible to get all OSM nodes (are not belong to any way) using the Overpass API?是否可以使用 Overpass API 获取所有 OSM 节点(不属于任何方式)?
【发布时间】:2013-09-19 19:24:33
【问题描述】:

我想获取所有 OSM 节点(不属于任何方式)。
有可能吗?

可以理解,这个查询获取所有节点(包括方式的成员)...

<osm-script output="json">
    <query type="node">
      <bbox-query {{bbox}}/>
    </query>
    <print/>
</osm-script>

9 月 19 日 20:20(GMT+9:00) 更新

我试了tyr的查询,成功了!

【问题讨论】:

  • 我没有看到可能的查询来实现这一点,但您当然可以对数据进行后过滤。你能解释一下为什么你需要这样一个奇怪的查询吗?
  • 我正在开发 Android OSM 编辑器应用程序,例如 Pushpin OSM。当然,它必须最终获得所有区域和节点(发布版本应用程序)。但现在发展中,我认为“仅显示节点比显示区域和节点更容易”......
  • 那么我建议对Overpass API返回的数据进行后过滤,并删除至少属于一种方式的所有节点。

标签: openstreetmap overpass-api


【解决方案1】:

其实从 Overpass API 最新版本开始,这是可能的:

<osm-script output="json">
  <query type="way">
    <bbox-query {{bbox}}/>
  </query>
  <recurse type="way-node" into="waynodes"/>
  <query type="node" into="allnodes">
    <bbox-query {{bbox}}/>
  </query>
  <difference>
    <item set="allnodes"/>
    <item set="waynodes"/>
  </difference>
  <print/>
</osm-script>

http://overpass-turbo.eu/s/14F

这使用difference 运算符从所有节点中减去属于任何方式的节点。

【讨论】:

    猜你喜欢
    • 2013-05-10
    • 1970-01-01
    • 2013-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-27
    • 2012-06-20
    相关资源
    最近更新 更多