| 

.NET C# Java Javascript Exception

6
Hallo zusammen,

ich brauche wieder einmal Eure geschätzte Hilfe bei der Suche nach einer geeigneten Technologie. Hier meine groben Anforderungen an eine Lösung:

Ich übergebe 2 Adressen (von denen ich allerdings nur die Postleitzahlen habe) nebst einer Reisegeschwindigkeit und erhalte die etwaige Fahrdauer (grob genügt mir wirklich). Das Ganze soll einer groben Routenplanung dienen, so dass ich in der Lage bin offene Zeitfenster bei der Tages- / Terminplanung zu finden. Idealerweise handelt es sich um eine freie bzw. nicht zu kostenintensive Lösung. Außerdem ist mir wichtig, dass die Ermittlung der Fahrdauer nicht unendlich in die Länge zieht, daher habe ich an eine offline GeoDatenbank gedacht.

Vielleicht denke ich auch zu kompliziert und könnte einen deutlich "schlankeren" Ansatz gehen. Da ich im Bereich Geo-Coding noch ein ziemlicher Frischling bin, habe ich auch bei der Suche im Netz noch keinen Favoriten gefunden.

Vielen Dank für Hinweise im Vorraus!
News:
23.11.2012
marcus_88 31 1 3
4 Antworten
1
Wenn du nicht zuviele Requests hast, könnte dir die Google Directions API vielleicht helfen. Man müsste nur testen, ob es auch nur mit Postleitzahlen funktioniert. Eine Offline-Lösung für Java kenne ich nicht.
23.11.2012
puls200 3,8k 7
Hallo puls200, danke für den Hinweis. Bei der Google API wird es vermutlich nicht so leicht, da die Anzahl der Requests vermutlich recht hoch sein wird. Auf eine reine Offline-Lösung kann ich auch verzichten, sofern es etwas Kostengünstiges bzw. Kostenfreies als Online-Lösung gibt.
marcus_88 03.12.2012
Nachtrag: Ich habe eben noch einmal den Ansatz mit der Google Directions API überprüft. Dieser kommt leider nicht in Frage, da in den Nutzungsbestimmungen aufgeführt ist, dass die nachgefragten Entfernungsdaten ausschließlich zur Anzeige auf einer Google Map einzusetzen sind, anderweitige Datenverarbeitung ist leider verboten :-/
marcus_88 03.12.2012
0
Für Java kenn ich leider nichts. Für PHP gibt es etwas namens OpenGeoDB und das Teil kann auch Entfernungsberechung, dafür gibt es auch wohl schon eine fertige Klasse geoclassphp. Wenn man die Entfernung schon mal hat, ist die Berechnung der Reisedauer ja kein Problem mehr.

Die Daten basieren auf MySQL und schließen auch die PLZ mit ein. Eventuell kannst Du ja mit den Daten und den Formeln zur Entfernungsberechung selbst unter Java was zaubern. Also zumindest theoretisch müsste man anhand des gegebenen Codes und der MySQL-Daten das auch irgendwie in Java umsetzen können - ist nur die Frage wie viel Aufwand Du Dir machen willst :)
23.11.2012
lunatigs 1,3k 2 8
Was mich interessieren würde: Berechnet geoclassphp die Entfernung rein nach Luftlinie oder wird eine echte Routenplanung durch ein gewichtetes Straßennetz durchgeführt? Ersteres ist nur bedingt brauchbar, da in Ballungsgebieten die Zeiten in Relation zur Entfernung extrem hoch sind.
puls200 25.11.2012
ok, dann wird es dir nicht sonderlich helfen, da es nur die luftlinie nimmt. für die komplette routenberechnung bräuchtest du ja auch noch straßendaten ... das wird dann deutlich komplizierter.
lunatigs 26.11.2012
Danke für den Hinweis. OpenGeoDB war mir bekannt. Ich denke eine einfache Entfernungsberechnung wird mir nicht genügend, da ich tatsächlich etwas in Richtung Routenplanung benötige. Ich bin diesbezüglich mit meiner Recherche erst relativ am Anfang und hab daher noch ein wenig Schwierigkeiten beim Finden einer Lösung, die in etwa auf das passt, was ich benötige.
marcus_88 03.12.2012
0
Wir nutzen für eine ähnliche Aufgaben MapPoint von Microsoft.
Da du aber etwas freies suchst, kannst du dir ja mal Quantum GIS anschauen.
03.12.2012
Floyd 14,6k 3 9
Danke, das schaue ich mir mal an! Kürzlich habe ich erfahren, dass wir auch MapPoint nutzen. Möglicherweise kann ich es auch hierfür nutzen.
marcus_88 03.12.2012
0
Wenn du Mappoint verwenden willst noch ein Hinweis: die Routenberechnung ist nicht wirklich besonders schnell. Es gibt aber einen Trick, um Fahrzeiten etwas schneller zu berechnen, wenn es nicht ganz genau sein muss:
Mit den DriveTimeZones kann man Polygone um einen Startpunkt erzeugen. Diese liefern den Bereich, den man vom Startpunkt aus in einer bestimmten Zeit erreichen kann. Wenn man diese mit unterschiedlichen Zeitvorgaben vorberechnet kann man die Routenberechnung auf einen Punkt-in-Polygontest reduzieren.
03.12.2012
puls200 3,8k 7

Stelle deine Anfahrtberechnung-Frage jetzt!