Entfernung mit PHP berechnen

vom 07.02.2012, 18:50 Uhr

Ich versuche momentan etwas zu programmieren. Man soll die Strecke der Luftlinie von zwei Punkten zurück gegeben bekommen. Die zwei Koordinaten habe ich in Form von Längen- und Breitengraden. Ich habe mich im Internet nach verschiedenen Formeln umgesehen. Auf den meisten Internetseiten bin ich auf diese Formel gestoßen:

Code: Alles auswählen
round(acos(sin(deg2rad(Breite1))*sin(deg2rad(Breite2))
+cos(deg2rad(Breite1))*cos(deg2rad(Breite2))
*cos(deg2rad(Länge2)-deg2rad(Länge1)))
*6378.388,2)

Eigentlich funktioniert es mit dieser auch ziemlich gut. Ich habe mir darauf eine kleine Funktion geschrieben, der ich eben die zwei Punkte übergebe und dann die Entfernung zurück bekomme. Bei den meisten kommt die Entfernung ungefähr hin. Aber bei manchen Ausnahmen bekomme ich dann ein komplett falsches Ergebnis. Bei vielen Punkten, die gerade mal wenige Kilometer von einander entfernt sind, bekomme ich Entfernungen von über 5000 Kilometern, was definitiv nicht sein kann.

Die Koordinaten habe ich natürlich mehrmals geprüft und auch die Entfernung habe ich mir bei Google Maps einmal angesehen. Dort kann man allerdings die Entfernung leider nicht als Luftlinie anzeigen lassen. Ich habe jetzt schon sehr viel gegoogelt und dennoch konnte ich einfach keine Lösung finden. Eine solche Aufgabe haben bestimmt schon viele programmiert, die mal etwas mit PHP zu tun hatten. Allerdings funktioniert keine Lösung im Internet. Immer funktionieren diese mit einigen Daten nicht.

Benutzeravatar

» hennessy221 » Beiträge: 5132 » Talkpoints: -1,94 » Auszeichnung für 5000 Beiträge



Die Massen an bisherigen Programmierungsvorschlägen, lassen ja schon erahnen, dass wohl doch nicht allzu viele Programmierer im Forum unterwegs sind. Aber wenn man mal ein wenig danach sucht, dann findet man schon genügend Antworten auf deine Frage. So habe ich zum Beispiel mal diese Seite gefunden und da wird auch genau dein Problem von der Berechnung der Entfernung zweier Geokoordinaten mittels PHP. Ein paar Formeln und Codebeispiele sind auch dabei und vielleicht helfen diese ja auch schon etwas weiter.

Benutzeravatar

» Pfennigfuchser » Beiträge: 3769 » Talkpoints: 34,48 » Auszeichnung für 3000 Beiträge


Ähnliche Themen

Weitere interessante Themen

^