Straßennetz erstellen


guschi

Grünschnabel
Hallo,
ich wollte für ein Spiel ein Straßennetz erstellen. Die Straßen sollen Namen besitzen und in Autobahnen, Bundesstraßen, ... unterschieden werden.
Ich bin nun am Überlegen, wie ich das Ganze am Sinnvollsten umsetze. Aktuell favorisiere ich die Lösung, dass ich die Straße aus Koordinaten aufbaue und in den Koordinaten den Namen und den Straßentyp festhalte. Das hat jedoch den Nachteil, dass die Kurven nicht rund sind (in Abhängig der Koordinatendichte) und die Straßen allgemein unschön aussehen. Man könnte dies natürlich ändern, indem man den Verlauf durch Polynome n-ter Ordnung annähert, was jedoch rechenintensiv und recht komplex ist.
Hat jemand vielleicht eine Idee, wie man sinnvoll an die Sache rangeht?

Viele Grüße
Gustav
 

Technipion

Erfahrenes Mitglied
Ich würde die Straßen als "Pfad mit Name" definieren.

Also jede Straße enthält einen String - ihren Namen, und einen Pfad. Ein Pfad ist einfach ein Array aus Punkten, von der einen Mündung bis zur anderen Mündung.
Zur grafischen Darstellung wäre vielleicht Cubic-Spline etwas?

Gruß Technipion
 

ComFreek

Mod | @comfreek
Moderator
Spontan hätte ich jetzt auch auf eine Aneinanderreihung von Splines getippt. Ein einzelnes Polynom für eine komplette Straße zu nehmen ist numerisch ein großes Problem.
 

Sempervivum

Erfahrenes Mitglied
Ich würde Bezierkurven in Betracht ziehen:
Die Kontrollpunkte lassen sich relativ leicht berechnen, weil die Kurven sich ja ohne Knick an die geraden Verläufe anschließen müssen.
 

Neue Beiträge