[Talk-de] Weg vom Way, hin zur Nodes-Relation (was: Routerhärtetest)

Andreas Pothe openstreetmap+mailingliste at pothe.de
Mo Jun 22 06:01:20 UTC 2009


Hi,

Mirko Küster:
> Manchmal
> muss man selbst 300m Dorfstraße in beispielsweise 9 Teile zerhacken,
> wenn
> man alles berücksichtigen will. Da sind Unterschiedliche
> Geschwindigkeitsbegrenzungen, wechselnde Fußwege, Beleuchtung etc.
> ... 
> Nur fürchte ich das es mitlerweile zu spät ist.

Ich denke, man könnte es noch wuppen, da mit der API 0.6 alle Basisvoraussetzungen vorhanden sind, die wir bräuchten. Man müsste sich lediglich darauf einigen, dass man keine Ways mehr in die Relationen packt, sondern nur noch Nodes. Die Verbindung dieser Nodes wird dann über die Wegteile, die dazwischenliegen, automatisch vorgenommen.

Und Geschwindigkeitsbegrenzungen wären dann sogar gerichtet möglich, weil man die nicht mehr an den Way packt, sondern in eine Relation mit "type=maxspeed" mit "maxspeed=70" und mindestens den Knoten "from" und "to" und sämtliche Knoten, an denen Wege einmünden, als "via". Oder sowas in der Richtung.

Komplett umgesponnen könnte man sogar fast sagen, dass Ways immer attributlos sein könnten oder zumindest nur essentielle Attribute wie "highway=primary" enthalten müssten, während alles andere wie z. B. Namen eigentlich nichts an Ways, sondern nur an Relationen wie oben beschrieben hängen müssten. In meinen Augen würde ein solches Schema die Datenbank richtig aufräumen, weil pro Relation immer nur ein Attribut bzw. nur zusammenhängende Attribute gelten würden.

Eine mögliche Modellierung mal am Beispiel Brücken:

A---B-C---D

Nach diesem Schema müsste ein Way nicht auf drei Ways aufgeteilt werden, nur weil mittendrin (zwischen Node B und Node C) eine Brücke ist. Einfach eine Relation "type=bridge","level=1", die die Knoten B und C enthält, fertig.

     X
     |
A--B---C--D
     |
     Y

(A-D überquert X-Y). Hier genauso: Nur die Relation "type=bridge","level=1". Dass man nicht vom Weg AD auf XY abbiegen kann, ist durch einen fehlenden gemeinsamen Knoten ausreichend modelliert.

Eine Umstellung des bisherigen Schemas wäre gar nicht so aufwändig, wenn ich sehe, wie viele Robots schon herumschwirren, dürfte sich sicherlich jemand finden, der auch hierfür einen Robot schreibt.

Grüße
Andreas


P.S.: Um es vorwegzunehmen: Das von mir geschriebene ist kein ausgefeilter Plan, aber da ich diesen Gedanken schon häufiger hatte, weil Wege immer kleiner und kleiner werden, was ich für sehr ungünstig halte, würde ich das trotzdem gern als Diskussionsgrundlage mal hier in den Raum werfen. Was haltet ihr davon, wo würdet ihr weitere Verbesserungen sehen?






Mehr Informationen über die Mailingliste Talk-de