按国家/地区过滤Overpass-API


9

有谁知道如何执行这样的overpass-api请求?

“告诉我德国的所有银行”?

我可以在一个特定的边界框中显示所有“便利设施=银行”。但是德国(或所有大多数国家)在这样的bbox中不太适合。

有什么办法吗?你有例子吗?服务器性能或运行时是次要的,因为我们可以托管自己的服务器或类似的东西:)

Answers:


11

使用立交桥turbo,语法为:

area["name"="Nordrhein-Westfalen"]->.boundaryarea;
(
nwr(area.boundaryarea)[amenity=bank];
);
out meta;

nwr是短期node- way-relation


它帮助我写了“>;” 在右方括号“)”之后;在“出”之前。否则,将不会显示地图中具有坐标的节点。
qräbnö

@qräbnö你说得对,我更新了答案。
AndreJ

7

用于QGIS的Quick OSM插件生成以下有效的Overpass查询:

<osm-script output="xml" timeout="200"> 
 <id-query {{nominatimArea:Austria}} into="area"/> 
 <union>
      <query type="node">
           <has-kv k="amenity" v="bank"/> 
           <area-query from="area"/>
      </query>
      <query type="way">
           <has-kv k="amenity" v="bank"/> 
           <area-query from="area"/>
      </query>
      <query type="relation">
           <has-kv k="amenity" v="bank"/> 
           <area-query from="area"/>
      </query>
 </union>
 <union>
      <item />
      <recurse type="down"/>
 </union>
 <print mode="body" />
</osm-script>

有关详细信息,请参见立交涡轮增压/扩展立交查询

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.