如何在OpenStreetMap中获取给定位置周围的所有道路?

时间:2013-12-02 07:19:33

标签: openstreetmap overpass-api

无法弄清楚如何在给定位置获取特定半径的所有道路。我当前的查询是

<query type="way">
    <around lat="55.693309807744484" lon="21.151986122131348" radius="50"/>
</query>
<union>
  <item/>
  <recurse type="down"/>
</union>
<print/>

我尝试添加类似<highway>primary,secondary,tertiary,residential</highway>之类的东西,但它没有效果

1 个答案:

答案 0 :(得分:7)

overpass turbo上查看您的查询。它 返回给定点周围的所有ways。所以你的解析器似乎有问题。

如果您要过滤特定的高速公路类型,则必须按照tag中的说明指定Overpass API Language Guide

<query type="way">
    <around lat="55.693309807744484" lon="21.151986122131348" radius="50"/>
    <has-kv k="highway" regv="trunk|secondary"/>
</query>
<union>
  <item/>
  <recurse type="down"/>
</union>
<print/>

result on overpass turbo

有关不同值的说明,请参阅highway key中的OpenStreetMap wiki