Das wäre schön, aber wie machst du das? Einerseits, wie formuliert man eine solche Datenbankabfrage generisch? Andererseits, wie ordnet man die Radweg-Infos den Straßenlinien zu wenn Radwege und Straßenlinien nicht an den gleichen Stellen geteilt sind? Auch die Zuordnung, welcher Radweg-Teil an welche Straßen-Teil gehört ist nicht immer eindeutig.
Man müsste mit der Datenbankabfrage die Straßenkanten teilen können, sowohl an bestehenden Knoten, als auch zwischen den Knoten.
Bei unterschiedlichen Längen von Radweg und Fahrbahn müsste interpoliert werden.
Zudem braucht es einen Algotithmus, der entscheidet, ob ein Weg als paralleler Radweg durchgeht oder ob es z.B. nur eine Verbindung zwischen Straße und Radweg ist.
Ich habe mal 3 Beispiele gezeichnet. Grün und Blau sind die Linien der separaten Radwege / Gehsteige. Rot bis Lila sind die Straßenlinien. Wo die Farbschattierung wechselt sind die Linien geteilt weil sich Attribute ändern. Die Attribute der blauen und grünen Radweg- / Gesteig-Linien sollen vor dem Routen den Straßen-Linien zugeordnet werden.
Im Beispiel A) sollen die Infos aus den drei Radweglinien 1-2, 2-3 und 3-4 an die Straßenlinien 7-8-9 und 9-10. Dazu müsste die Straßenlinie am Knoten 8 geteilt werden. Ob der Knoten 3 und der Knoten 9 wirklich zusammengehören wäre in der Datenbankabrage zu entscheiden, ggf. muss nahe dem Knoten 9 nochmal geteilt werden.
Im Beispiel B) müssten die Straßenlinie 9-8-9 und die Linie 9-10 geteilt werden.
Im Beispiel C) müssten ebenso Straßenlinen mehrfach geteilt werden. Zudem ist für die Straßenlinie 9-5 zu entscheiden, ob die Linie 4-5 ein paralleler Radweg ist (so wie 3-4) oder nicht. Aus der Datenbankabfrage müsste dabei herauskommen, dass bereits die Linie 4-11 der parallele Radweg ist und 4-5 nur eine Verbindung zwischen Radweg und Fahrbahn.
Ich bin mir nicht sicher, ob das alle Schwierigkeiten sind.
Ich bin kein Datenbankprofi, kann mir aber nicht richtig vorstellen, dass man das in einer Abfrage hinbekommt.
Eher kann ich mir vorstellen, dass man Übertragen der Radweg-Eigenschaften an die Straßenlinien in einem Vor-Prozess unter Nutzung von Routingalgorithmen macht. Man schaut vorab bei jeder Kreuzung, welche alternativen Fahrwege über Radwege es zur nächsten Kreuzung gibt. Die Attribute dieser Wege werden dann zur Wichtung der Straßenlinien genutzt.
Ich vermute das alles ist entweder nicht eindeutig machbar. Vermutlich ist auch der Code dazu so kompliziert oder rechenaufwändig, dass es nicht realistisch umsetzbar ist. Es verbleibt also als einer der großen Nachteile des Getrennt-Mappings, dass das Routing an “mikroskopisch” abgebildeten Kreuzungen teilweise unbrauchbar wird.
Die Info, ob der seperate gemappte Weg nun wirklich seperat ist oder ob ein Wechsel zur / Querung der Fahrbahn möglich ist nicht duch Datenbankabfragen oder Algorithmen generierbar, die muss irgendwie gemappt werden.
Ja, das ist einer der großen Nachteile des Zusammen-Mappings. Es stehen nur ‘width’ oder ‘lanes’ und ‘placement’ zur Verfügung, um die Lage einigermaßen zu verorten. Bei fahrbahnnahen, weitgehend parallelen Radwegen sollte das aber ausreichen.
Da gab es ein DDR-Lied “Sag mir wo du stehst?” Als Radfahrer sind Radwege der Nabel der Welt, Autos sind eh’ Schrott der Geschichte. Als Grundstücksbesitzer sind es aber eher die Grundstücke. Also wenn, dann eher die äußerste Grenze der Straße mappen, also von außen nach innen, oder ?
Die bisherige Abstraktion durch Linien hätte ich so verstanden, dass die Linie standardmäßig die Mitte der Straße / der Fahrbahn abbildet und die Fahrspuren/Seitenräume von dort aus gezeichnet werden. Das wäre eine Umkehr des Ganzen, hat auch so seine Reize.
Das Problem würde es aber auch nicht lösen. Wenn auf der anderen Seite ein Radweg verläuft haben wir wieder 2 Linien wo sich die Frage stellt, “Wo kommt man von der einen auf die andere Linie?”.
Vielleicht eine andere Möglichkeit: Alle Radwegdetails an die Straße mappen, den geometrischen Verlauf dann separat aber ohne weitere Attribute außer einen Tag das sagt “Attribute stehen an der Straße”. Dann fehlen die Infos allerdings beim mikroskopischen Routing.