home

Laborbericht


Streckenlandschaft: Bildung der Hüllkurve durch Verschmelzen der Polygone

Die auch bei 50 m oder 30 m noch recht grobe Gitterweite der Höhendaten des digitalen Geländemodells (DLG oder engl. DEM) führt dazu, dass Bahntrassen und andere Verkehrswege in diesem Modell häufig nicht wiedergegeben werden. Die Geländeform des Modells zeigt daher eine Landschaft, bei der der Erdbau für die Bahntrasse erst noch stattfinden muss.

Jetzt geht das Konzept des Geländeformers für die entscheidende Stufe der Landschaftsgestaltung davon aus, dass die Bahntrasse bereits besteht, geprägt durch Gleisbett/Oberbau, Dämme, Einschnitte und Tunnel. Diese Bahntrasse ist bereits eine „Landschaft“, da sie aus Landschaftselementen zusammengesetzt ist, und wird im Geländeformer entsprechend als „Streckenlandschaft“ bezeichnet.

Bei der Formung der Gesamtlandschaft mittels der Daten des digitalen Geländemodells muss die Streckenlandschaft einbezogen werden. Sie darf vom digitalen Geländemodell nicht verändert werden.

Der Geländeformer macht sich hierbei zu Nutze, dass Topographie eigentlich nur eine zweidimensionale Angelegenheit auf der x/y-Ebene ist, mit der Höhe z eines jeden Punktes lediglich als Attribut, und weniger als dritter Dimension. Diese Betrachtung führt zu einer deutlichen Vereinfachung der Berechnungswege.

Die Streckenlandschaft besteht aus einer Vielzahl von 3-D-Polygonen, die in der Projektion auf die x/y-Ebene (von oben betrachtet) eine geschlossene Gesamtfläche bilden (evtl. sind es mehrere Flächen und enthalten diese ggf. „Löcher“).

Anmerkung: Der Zusi-Streckeneditor bewerkstelligt ähnliche Aufgabenstellungen beim Anlegen der Grundplatte um die Streckenlandschaft und bei der Funktion Farbeimer, verwendet aber wohl andere Algorithmen.

Bilden der Vereinigungsmenge

Umschlossen wird die Fläche von einer Hüllkurve. Diese Hüllkurve dient dann später als Grenze für die Daten des digitalen Geländemodells. Die neue Landschaft darf nur außerhalb dieser Hüllkurve durch die digitalen Höhendaten angelegt werden. Die Hüllkurve selbst ist wieder ein 3-dimensionales Polygon, wird aber zunächst nur als 2-dimensionales Polygon in der x/y-Ebene berechnet. Diese 2-dimensionale Berechnung erfolgt als Polygonschnitt, indem die Vereinigungsmenge für alle Polygone der Streckenlandschaft gebildet wird, in der x/y-Ebene, durch Weglassen der z-Koordinate.

Die Bildung der Vereinigunsgmenge und die Nachbearbeitung ist ein rechenintensiver Prozess, über dessen Fortschritt im Geländeformer über die Statuszeile berichtet wird, vgl. Bild 1.

merge-status.gif (3232 Byte)

Bild 1: Die Statuszeile zeigt den Fortschritt und die Ergebnisse beim Verschmelzen der Streckenlandschaftspolygone. Bei dem Beispiel mit den Testdaten sind insgesamt 3187 Polygone betroffen. Nach dem Verschmelzungsdurchlauf blieben 147 Polygone übrig, 146 davon waren Löcher im Inneren des großen, allumschließenden Polygons. Jetzt setzt der Artefakt-Filter ein. Er löscht von den zunächst verbliebenden 147 Polygonen nochmals 144. Die jetzt noch vorhandenen Polygone sind die äußere Hüllkurve und zwei Löcher am Bahnsteigende. Weiterhin säubert dieses Artefakt-Filter die Polygonkanten, entfernt 10 als Nachbarn doppelt vorhandene Punkte, 124 sogenannte kollineare Punkte, bei denen jeweils 3 auf einer Geraden liegen und außedem 14 so getaufte Einschnittspunkte, bei denen der jeweils 1. und 3. Punkt von drei aufeinanderfolgenden Punkten identisch sind. Schließlich müssen noch z-Koordinaten für 14 Punkte ergänzt werden. Diese Punkte sind durch den Polygonschnitt neu entstanden. Im Beispiel konnten alle z-Koordinaten nach der Methode des kleinsten Abstands von einer ursprünglich vorhandenen Geraden mit zusätzlich kleinstem z-Wert ermittelt werden, siehe Bild 3

Artefakt-Filter

Bei der Bildung der Vereinigungsmenge bleiben ggf. „Schnittreste“ übrig, doppelte, eingeschnittene oder kollineare Punkte sowie flächenlose Polygone. Über ein Filter wird die Hüllkurve von solchen Artefakten gesäubert. Dieses Filter arbeitet in drei Stufen.

 

stuetzmauer.gif (65856 Byte)

Bild 2: Diese Graphiken veranschaulichen die Wirkung des Artefakt-Filters auf die Polygonkante für den Bereich der Stützmauern bei den Testdaten. Die mittlere Darstellung zeigt das Gittermodell vor Anwendung des Artefakt-Filters. Die Polygonkante der gesuchten Hüllkurve ist gelb dargestellt. Deutlich ist zu erkennen, das die Polygonkante häufig die äußere Kontur verlässt und Kantenverläufen der Stützmauern ins Innere folgt. Links unten das Ergebnis nach der Artefakt-Filterung. Alle Einschnitte ins Innere der Hüllkurve sind verschwunden. 

 

z-Koordinaten ergänzen

Anschließend müssen die z-Koordinaten wieder ergänzt werden. Solange Eckpunkte der Hüllkurve mit ursprünglichen Polygonpunkten aus der Streckenlandschaft zusammenfallen, wird schlicht die z-Koordinate des ursprünglichen Punktes weiterverwendet. Existieren für einen Punkt der x/y-Ebene mehr als eine z-Koordinate (z.B. bei senkrechten Kanten von Bahnsteigen), wird immer der kleinste/unterste z-Wert genommen.

Jetzt entstehen aber bei einem Polygonschnitt wie dem Bilden einer Vereinigungsmenge auch neue Schnittpunkte, für die es bisher keine z-Koordinate gab. Für solche Punkte muss der z-Wert interpoliert werden. Diese Interpolation ist in jedem Fall ein Näherungs- und Interpretationsverfahren. Eine exakte z-Koordinate gibt es nicht immer, da die gesamte Hüllkurve das Ergebnis einer Projektion ist und im 3D-Raum so nicht existiert.

Der Geländeformer versucht zur Bildung der z-Koordinate vier Methoden in folgender Reihenfolge:

Originalgerade: Jeder neue Punkt ist als Schnitt von zwei Geraden in der x/y-Projektion entstanden. Diese beiden Geraden werden in einem begrenzten Umfeld des Bezugspunktes gesucht, und die tiefere der beiden wird als Referenz für eine lineare Interpolation benutzt.

Werden die Originalgeraden nicht gefunden, wird Umfassungsdreieck und baryzentrische Koordinaten versucht: Sämtliche Punkte aller Polygone der ursprünglichen Streckenlandschaft bilden zusammen eine Punktwolke. Bei mehreren Punkten mit gleichen x/y-Koordinaten wird allerdings nur der Punkt mit der kleinsten z-Koordinate berücksichtigt. Aus dieser Punktwolke werden drei Punkte so ausgesucht, dass das durch sie gebildete Dreieck den gesuchten Punkt umschließt und diese drei Punkte zusätzlich möglichst nah am gesuchten Punkt liegen. So entsteht ein Umfassungsdreieck. Die z-Koordinate des gesuchten Punktes ergibt sich durch Interpolation aus den z-Koordinaten der Dreieckspunkte. Dazu werden sogenannte baryzentrische Koordinaten verwendet. Baryzentrische Koordinaten beschreiben den relativen Abstand eines Punktes innerhalb eines Dreiecks zu den Eckpunkten des Dreiecks. Die Summe der drei baryzentrischen Koordinaten beträgt immer 1. Der Abstand, der durch die baryzentrischen Koordinaten angegeben wird, dient als Wichtung bei der Interpolation.

Nachbarpunkte der Hüllkurve: Lässt sich kein Umfassungsdreieck finden, so werden im dritten Versuch die Nachbarpunkte auf der Hüllkurve betrachtet. Sind bei diesen Nachbarpunkten z-Koordinaten vorhanden, wird die z-Koordinate des gesuchten Punktes unter Berücksichtigung des Abstandes zu den Nachbarpunkten durch lineare Interpolation gebildet. Diese Art der Interpolation wird weniger akkurat als die baryzentrische sein, da die Nachbarpunkte auf der Hüllkurve unter Umständen nicht die unmittelbare Umgebung des gesuchten Punktes widerspiegeln.

Wenn die unmittelbar benachbarten Punkte auf der Hüllkurve keine z-Koordinaten aufweisen, wird im dritten und letzten Versuch auf die beiden nächsten Nachbarn der Punktwolke zurückgegriffen, und, bezogen auf den Abstand, linear interpoliert. Bei diesem Verfahren entstehen die größten Abweichungen.

 

bahnsteig.gif (89456 Byte)

Bild 3: Im Bereich des Bahnsteigendes entstehen Löcher in der Hüllkurve. Die linke Darstellung zeigt für das diesseitige Loch das Ergebnis des Polygonschnitts in der x/y-Ebene. In blau sind die Polygone angedeutet, die durch den Schnitt das Loch bilden. Nur für vier Randpunkte des Lochs existieren bereits Koordinatenpunkte, die beiden anderen werden zunächst zu 0 gesetzt, erkennbar am "Absturz" der gelben Kurve. Die Darstellung rechts unten gibt das Ergebnis nach Durchlauf der z-Koordinatenergänzung wieder. Die beiden vorher fehlenden Punkte wurden ergänzt (der Spitzpunkt vorne und der Punkt an der rechten Seit der Bahnsteigkante. Außerdem ist in der Darstellung zu erkennen, dass die äußere Hüllkurve am rechten Bahnsteig entlang der Unterkante verläuft, da bei mehreren senkrecht übereinderliegenden Punkten geweils der unterste verwendet wird, mit Ausnahmen bei Polygontyp "Stützmauerabschluss"

 


© 2001 Roland Ziegler