x

Overpass: Kreuzungen finden


  1. Overpass: Kreuzungen finden · hobbesvsboyle (Gast) · 03.12.2013 14:55 · [flux]

    Ich würde gerne mit der Overpass API sich kreuzende Wege (mit gemeinsamem Knoten) identifizieren. Mein Google-Fu hat leider nur Hinweise gefunden, wie man dies direkt in den XML-Daten macht, aber nichts für Overpass. Kann mir jemand einen Stups in die richtige Richtung geben?

    Danke!

    Harald.


    • Re: Overpass: Kreuzungen finden · stephan75 (Gast) · 03.12.2013 17:46 · [flux]

      Ich behaupte mal, dass die Overpass-API und der Overpass-turbo so ein Feature NICHT haben ... denn allein die Abfrage ob ein spezieller Node zu zwei verschiedenen Wegen gehört, benötigt schon eine eigene Abfrage-Logik.

      Da musst du wohl was selber für stricken ... oder per Geo-Datenbank und dann mit spatial Abfragen realisieren.


    • Re: Overpass: Kreuzungen finden · EvanE (Gast) · 03.12.2013 20:18 · [flux]

      stephan75 wrote:

      Ich behaupte mal, dass die Overpass-API und der Overpass-turbo so ein Feature NICHT haben ... denn allein die Abfrage ob ein spezieller Node zu zwei verschiedenen Wegen gehört, benötigt schon eine eigene Abfrage-Logik.

      Da musst du wohl was selber für stricken ... oder per Geo-Datenbank und dann mit spatial Abfragen realisieren.

      Und wie funktioniert dann die Maxheight-Karte, die ja die Overpass-API nutzt?
      Kompliziert wird das schon sein: Einfache Frage, schwierige Antwort.

      Edbert (EvanE)


    • Re: Overpass: Kreuzungen finden · Netzwolf (Gast) · 03.12.2013 20:46 · [flux]

      Nahmd,

      hobbesvsboyle wrote:

      Ich würde gerne mit der Overpass API sich kreuzende Wege (mit gemeinsamem Knoten) identifizieren.

      stephan75 wrote:

      Ich behaupte mal, dass die Overpass-API und der Overpass-turbo so ein Feature NICHT haben ... denn allein die Abfrage ob ein spezieller Node zu zwei verschiedenen Wegen gehört, benötigt schon eine eigene Abfrage-Logik.

      EvanE wrote:

      Und wie funktioniert dann die Maxheight-Karte, die ja die Overpass-API nutzt?

      Die Maxheight-Karte lässt sich die interessierenden Ways in der jeweiligen Bbox von OP liefern und sucht in den gelieferten Wegen im Browser per JS nach sich schneidenden Wegen (Brücken und Unterführungen).

      Die Fragestellung bezieht sich auf Wege mit gemeinsamen Knoten und nicht auf sich schneidende Wege. Diese Aufgabe ist auf dem gleichen Wege zu lösen, also durch Laden der Ways (mit Knoten) von OP und anschließender Suche per JS in den gelieferten Daten. Die Suche nach Ways mit gemeinsamen Knoten ist sogar deutlich einfacher/schneller als die Suche nach sich schneidenden Wegen.

      Gruß Wolf


    • Re: Overpass: Kreuzungen finden · hobbesvsboyle (Gast) · 04.12.2013 00:10 · [flux]

      Danke für die Antworten! Ich hatte schon befürchtet, dass es etwas komplizierter werden könnte. Glücklicherweise hat sich inzwischen herausgestellt, dass keepright schon die gewünschte Funktionalität mitbringt (es geht um Brücken, die versehentlich einen gemeinsamen Knoten mit der darunter verlaufenden Straße haben).

      Harald.


    • Re: Overpass: Kreuzungen finden · EvanE (Gast) · 04.12.2013 00:31 · [flux]

      hobbesvsboyle wrote:

      Danke für die Antworten! Ich hatte schon befürchtet, dass es etwas komplizierter werden könnte. Glücklicherweise hat sich inzwischen herausgestellt, dass keepright schon die gewünschte Funktionalität mitbringt (es geht um Brücken, die versehentlich einen gemeinsamen Knoten mit der darunter verlaufenden Straße haben).

      Hallo Harald

      Das schränkt die Anzahl der Treffer natürlich drastisch ein.
      Eventuell kann man je Brücke eine Umgebungsabfrage (near) machen.

      Edbert (EvanE)


    • Re: Overpass: Kreuzungen finden · mmd (Gast) · 04.12.2013 10:47 · [flux]

      Netzwolf wrote:

      Die Maxheight-Karte lässt sich die interessierenden Ways in der jeweiligen Bbox von OP liefern und sucht in den gelieferten Wegen im Browser per JS nach sich schneidenden Wegen (Brücken und Unterführungen).

      Die Overpass API führt selbst schon einen Schnitttest ausgehend von Brücken aus und filtert damit einen Großteil der Daten heraus lange bevor sie an den Browser übertragen werden. Ohne dieses Vorfiltern wäre eine sinnvolle Antwortzeit überhaupt nicht realisierbar. Gleichzeitig macht dieser Schnitttest auf der Overpass API einen guten Teil der Antwortzeit aus. In Javascript ist ein weiterer Schnitttest implementiert, der Schnittpunkte an inneren Punkten ermittelt. Für die Overpass API benötigt man ein "around"-Statement mit Radius 0. Wurde auch hier im Forum diskutiert.

      Gruß,
      mmd