Mit Overpass nodes innerhalb einer relation finden

Hallo zusammen,

ich versuche mit Overpass turbo alle Hydranten innerhalb meiner Gemeinde zu finden [0].
Mit einer simplen bbox klappt das auch ganz einfach, aber dann hab ich auch die aus den Nachbargemeinden mit dabei [1].
Ich habs auch hinbekommen die Gemeindegrenzen per id-query zu erhalten, aber weiss nicht wie ich das verknüpfen kann!?

Hat mir jemand einen Vorschlag?

Besten Dank schonmal :slight_smile:

Bouni

[0] http://overpass-turbo.eu/s/zw
[1] http://overpass-turbo.eu/s/zx

Man braucht die Area statt der Relation:
http://overpass-turbo.eu/s/zy

Dann kann man die Area als Kriterium bei der Hydrantensuche verwenden.

Aus Gründen der Bequemlichkeit suche ich hier per Name der Gemeinde. Es würde auch mit der Id gehen.

Ich hänge mich mal in diesen Thread mit einer ähnlichen / verwandten Frage …

Diese Abfrage liegert alle Spielplätze (Nodes) in Münster:

(
area[admin_level = 6][name = “Münster”]->.input;
node (area.input) [“leisure”=“playground”];
);
out;

Frage: Gibt es eine Möglichkeit die Relations-ID (rel(62591)) als Selektionskriterium für den Bereich zu verwenden?

Gruß Klaus

Hi,

perfekt!

Das ist genau wonach ich gesucht habe!

Danke :smiley:

guggst du https://help.openstreetmap.org/questions/20841/how-to-query-all-elements-within-an-outline-way-from-overpass-api

Danke für den Link … eine Relations-ID kann nach meinem Verständnis derzeit nicht verwendet werden. Interessant ist dieser Link: https://github.com/drolbr/Overpass-API/blob/master/rules/areas.osm3s der die Möglichkeiten beschreibt …

@RolandOlbricht: Könnte man die Abfragevariante per Rel-ID implementieren? Es sind ja viele Mapper die die Overpass-API benutzen und die entsprechenden IDs kennen …

Danke und Gruß Klaus

Warum nicht?

Ich hab schon erfolgreich Grenz-Relationen als Begrenzungen benutzt und einfach diese 360000000 zur Relations-ID hinzuaddiert.

Ist zwar schon viele Monate her, aber warum sollte das nicht klappen? Wegen dem fehlenden Namen?

Ja. Wenn eine area angelegt worden ist, hat sie eine mit 3.6 Mrd größere Id als ihre Basis-Relation:

(
area(3600062591)->.input;
node (area.input) [“leisure”=“playground”];
);
out;

Ah, jetzt mit neuem Account … Danke … funktioniert wie gewünscht.
Ich war an der Syntax gescheitert und habe immer etwas mit “rel(id)” versucht.

Gruß Klaus

Das mit Area und der RelationsID scheint ja gut zu funktionieren, an was es fehlt, ist die Möglichkeit innerhalb selbst definierter Polygone Abfragen durchzuführen.

@Roland Olbricht:
Wäre es nicht eine sinnvolle Erweiterung der overpass api / overpass turbo mit Hilfe von poly-files selbstdefinierte Polygone abfragen zu können?
z.B. dass es möglich ist, der area ein lokal gespeichertes .ply zuzuweisen?

Welches Dateiformat sind genau poly-files? Mit Lat/Lon-Koordinatenlisten geht es: http://wiki.openstreetmap.org/wiki/Overpass_API/Overpass_QL#By_Polygon.

http://wiki.openstreetmap.org/wiki/Osmosis/Polygon_Filter_File_Format
Die Umwandlung in das von der Overpass API unterstützte Format, wie von Dir verlinkt, ist trivial.

Hier ein Beispiel für ein (sehr einfaches) Polyfile:

fzk_deu_no
1
9.500E+00 4.980E+01
9.500E+00 5.525E+01
1.525E+01 5.525E+01
1.525E+01 4.980E+01
9.500E+00 4.980E+01
END
END

Gruß Klaus

Es gibt für Josm-Anwender eine prima Lösung, beliebige POLY-Files zu erzeugen. Plugin Poly installieren und loslegen:

  • Josm aufrufen - klaro :wink:
  • leere Ebene anlegen
  • Mapnik als Hintergrund wählen und in den gewünschten Bereich zoomen
  • Polygon als geschlossenen Way “malen”
  • als Poly-File speichern
  • NICHT hochladen !

done.

Aufwand: 60 Sekunden.

Gruss
walter


Grossraum-München
1
   10.909957   48.108186
   11.143712   48.299203
   11.450643   48.458514
   11.747411   48.418058
   12.040113   48.308667
   12.196628   48.157024
   12.131583   47.837382
   11.861240   47.743153
   11.444545   47.765018
   11.225018   47.866026
   11.162006   47.936887
   10.991263   48.066094
   10.909957   48.108186
END
END