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.

    Aber hier
    http://goblor.de/wp/2009/10/17/openstreetmap-projekt-teil2-–-von-den-rohdaten-zum-gerichteten-graphen/

    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-Algorithmus

    Viel Glück


Anmelden zum Antworten