Routenrechner
-
Hallo. Ich habe in meinem Studium eine Forschungsaufgabe erhalten. Ich soll ein Programm schreiben, welches von Standpunkt A nach B die Entfernung berechnet. Als Weg soll das deutsche Straßennetz genutzt werden. Wie kann ich das Straßennetz als Wege realisieren? Ich bin total am Verzweifeln.
-
Als Weg soll das deutsche Straßennetz genutzt werden. Wie kann ich das Straßennetz als Wege realisieren?
Davon abgesehen, dass Du für diese Frage im falschen Forum bist, Du müsstest die Koordinaten aller Straßen ablegen.
Für eine wirkliche Berechnung benötigt man eigentlich Geoinformationen, digitales Kartenmaterieal im gewünschten Koordinatensystem. Jeder Routenplaner, jedes Navi nutzt solche Daten. Sind die vorhanden? Da gibt es verschiedene komerzielle Anbieter die verschiedene Systeme (Navteq, ATKIS) vertreiben. Die lassen sich das sehr sehr teuer bezahlen.
Du könntest dich natürlich mit einem Navi an jeden gewünschten Punkt stellen und die Koordinaten selbst aufnehmen. Aber das ganze Staßennetz? Die Aufgabe erscheint mir ziemlich unüberlegt.
-
Da gehts warscheinlich eher um die Logic der Berechnung der kürzesten Strecke als um echtes Kartenmaterial?
Die Strecken sind definierte Längenbedingungen, das Programm muss dann Bedingungen vergleichen, soweit mir bekannt ein rein funktionales Thema. ( Theretisches halbwissen)
-
Nicht einfach.
kannst du dich einlesen. Mit den Daten von Openstreetmap kannst du arbeiten.
Für osm gibt es auch bereits Routenplaner, so das du deinen Ansatz vergleichen kannst.
Frohes Schaffen
-
Hallo
wenn es darum geht den Weg(Strecke) zurechnen
dann versuch das hier mal:double Distanz(CPoint p1, CPoint p2) { //Wurzel((x1-x2)^2+(y1-y2)^2) return sqrt( (pow( (double)(p1.x - p2.x), 2.0 )) + (pow( (double)(p1.y - p2.y), 2.0)) ); }
wenn Du den Kürzesten Weg errechnen möchtest dann mach Dich mit dem hier schlau
http://de.wikipedia.org/wiki/Dijkstra-AlgorithmusViel Glück