OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

#1 2018-09-12 09:39:47

RoterEmil
Member
Registered: 2016-10-09
Posts: 278

Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

Hi,
wie sieht eine overpass-turbo-Abfrage aus, mit der ich nach Gebäuden oder auch z.B. Straßen suche, die nodes mit einem bestimmten tag auf ihrem äußeren way haben bzw. auch in ihrer Fläche (gilt dann natürlich nicht für Straßen) beinhalten?

Danke und schöne Grüße

Offline

#2 2018-09-12 22:01:19

RoterEmil
Member
Registered: 2016-10-09
Posts: 278

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

Ok, mal ein konkretes Anwendungsbeispiel:
Ich suche ways mit dem tag 'public_transport=platform', auf denen nicht ein highway=bus_stop liegt.
Ggf. könnte man das erweitern: wenn die 'platform' als Polygon gezeichnet ist und kein 'bus_stop' auf dem äußeren way ist bzw. innerhalb dieser Fläche liegt.

Danke für Rat im Voraus

Offline

#3 2018-09-13 18:07:05

ikonor
Member
Registered: 2010-11-08
Posts: 427
Website

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

Diese Abfrage liefert erst mal alle "platform" mit "bus_stop" auf dem Weg:

way[public_transport=platform]({{bbox}})->.platforms;
node(w.platforms)[highway=bus_stop];
way.platforms(bn);
(._;>;);
out meta;

http://overpass-turbo.eu/s/BRy

Erst werden alle "platform" abgefragt, deren Knoten mit "bus_stop" ausgewählt, und die zu diesen Knoten gehörenden Wege aus der "platforms" Menge zurückgegeben.
Siehe auch Beispielsammlung –Gebäude mit entrance-Knoten

Um die "platform" ohne "bus_stop" zu bekommen wird hier noch die Differenz der Menge aus allen "platforms" minus derer mit "bus_stop" gebildet:

way[public_transport=platform]({{bbox}})->.platforms;
node(w.platforms)[highway=bus_stop];
way.platforms(bn)->.stop_platforms;
(.platforms; - .stop_platforms;);
(._;>;);
out meta;

http://overpass-turbo.eu/s/BRz

Einen Knoten-in-Fläche (Punkt-in-Polygon) Filter, um "bus_stop" Knoten innerhalb von "platform" Flächen abzufragen, kennt die Overpass API meines Wissens nicht (?), das wäre eher was für PostGIS. In den neueren Overpass Funktionen bin ich aber noch nicht so drin, vielleicht könnte man es schon irgendwie hinkriegen.

Offline

#4 2018-09-13 18:18:17

mmd
Member
Registered: 2010-11-06
Posts: 1,497

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

ikonor wrote:

Knoten innerhalb von "platform" Flächen abzufragen, kennt die Overpass API meines Wissens nicht (?)

Es geht nur, wenn es eine passende Area gibt, was hier wohl nicht der Fall ist. Ansonsten geht das momentan auf der produktiven Instanz nicht.

Offline

#5 2018-09-13 18:55:56

ikonor
Member
Registered: 2010-11-08
Posts: 427
Website

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

Schade, ein paar sehr vage Ideen hätte ich sonst bei Gelegenheit vielleicht noch geprüft:
- ich meine, ich hätte irgendwo mal was von "make area" oder so gelesen?
- sowas wie limit 1 wenn "around" die Ergebnisse sortiert nach Entfernung vom Node liefern würde
- poly Filter aus vorselektierten Ways (geom?)
- Intersect Test mit around:0 und linestring aus Node point + Himmelsrichtungen oder so

Offline

#6 2018-09-13 19:00:55

mmd
Member
Registered: 2010-11-06
Posts: 1,497

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

Vor ein paar Jahren gab's mal einen Prototypen, der das (mehr schlecht als recht) konnte: https://github.com/drolbr/Overpass-API/ … t-67730679 - ist leider nicht mehr draus geworden. Macht aber nichts, weil das ganze Area-Konzept wohl nochmal auf den Prüfstand kommt, und dann hoffentlich nicht mehr an starre Regeln für eine Vorberechnung gebunden ist.

Last edited by mmd (2018-09-13 19:02:28)

Offline

#7 2018-09-13 22:02:06

RoterEmil
Member
Registered: 2016-10-09
Posts: 278

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

Danke, ikonor, für das Erstellen einer brauchbaren Abfrage, super! Ich habe hinter dem "way[public_transport=platform]" noch ein bus=yes hinzugefügt, damit nicht U-Bahnhöfe auftauchen, die naturgemäß nicht mit einem bus_stop versehen sind. Das hilft schon mal ungemein weiter, denn in Berlin wurden leider in der Vergangenheit bei vielen Bushaltestellen das hw=bus_stop entfernt (inzwischen wurde es in vielen Fällen wieder ergänzt), aber es gibt noch Lücken, die ich damit jetzt wenigstens teilweise abfragen kann.
Danke auch an mmd für die ergänzenden Infos. Wäre ja schön, wenn es hier eine Entwicklung gäbe.

Am Rande: Interessant finde ich ja, wenn ich mich recht erinnere, dass von manchen (auch hier im Forum) behauptet wurde, Adressen an Geschäfts-POI bräuchte es nicht, denn das ließe sich ganz leicht abfragen durch die Adresse am Gebäudeumriss. Nun scheint sowas aber doch kein Kinderspiel (mit der overpass) zu sein.

Offline

#8 2018-09-13 22:05:41

mmd
Member
Registered: 2010-11-06
Posts: 1,497

Re: Bitte um Hilfe bei Erstellung von overpass-turbo-Abfragen

RoterEmil wrote:

Nun scheint sowas aber doch kein Kinderspiel (mit der overpass) zu sein.

Overpass ist ja auch kein Geocoder... cool

Offline

Board footer

Powered by FluxBB