Filtern der Überführungs-API nach Land


9

Weiß jemand, wie man eine solche Überführungs-API-Anfrage ausführt?

"Zeig mir alle Banken in Deutschland"?

Ich könnte einfach alle 'Annehmlichkeiten = Bank' in einem bestimmten Begrenzungsrahmen anzeigen. Aber Deutschland (oder vor allem Länder) passt nicht sehr gut in eine solche Bbox.

Gibt es eine Möglichkeit, dies zu tun? Hast du ein Beispiel? Serverleistung oder Laufzeit ist zweitrangig, da wir einen eigenen Server oder ähnliches hosten könnten :)

Antworten:


11

Bei Verwendung von Overpass Turbo lautet die Syntax:

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

nwrist eine Abkürzung für node- way-relation


Es hat mir geholfen, ">" zu schreiben. nach der schließenden runden Klammer ");" und vor "out". Andernfalls wurden keine Knoten mit Koordinaten in der Karte angezeigt.
Qräbnö

@ qräbnö du hast recht, ich habe meine Antwort aktualisiert.
AndreJ

7

Das Quick OSM-Plugin für QGIS generiert die folgende funktionierende Überführungsabfrage:

<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>

Einzelheiten finden Sie unter Überführungsturbo / Erweiterte Überführungsabfragen

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.