2017-11-20 4 views
2

I Strom lat und lange und Geschwindigkeit des Fahrzeugs und wollte Abstand für die Punkte erhalten, die zu meiner aktuellen Position in der Nähe ist, aber ab:Wie Distanz berechnen (nicht Verschiebung) zwischen zwei GPS-cordinates

Haversine Formel - RW Sinnott, "Tugenden der Haversine" - SQL-Abfrage, um Abstand zu erhalten.

Ich bekomme nur Verschiebung nicht Entfernung. Ich wollte die Streckenentfernung auf der Straße (nicht Luft;)) bekommen. Auch versucht Abstand Berechnung JSON API GOOGLE API aber während Berechnung für mehr als 10 Koordinaten in Schleife dauert es zu viel Zeit, um Ergebnisse auf mobile Plattform von REST API zu liefern.

kann mir jemand helfen, die besten Ergebnisse zu erzielen, indem ich die Entfernung zwischen zwei gps-basierten Punkten finde. Weiter: Ich suche auch nach Richtung der Punkte in Bezug auf (Nord-Ost) oder Grad.

+0

Versuchen Sie BING API ?? –

+0

Wenn Sie nur an der Entfernung interessiert sind, warum sollten Sie sich auch nur die Haversine-Sachen ansehen (was für den Flugverkehr einschließlich der Großkreisdistanz gilt)? – zipzit

+0

Haben Sie sich die Dokumentation zur [Google Distance API?] (Https://developers.google.com/maps/documentation/distance-matrix/) angesehen ... Es scheint sich um ein vollständiges Beispiel auf dieser Website zu handeln. Sie haben nach Wegbeschreibungen (http: //maps.googleapis.com/maps/api/directions/ ...) und nicht nach den Entfernungsinformationen (https://maps.googleapis.com/maps/api/distancematrix/json) gesucht. . Ich muss glauben, dass das Entfernungsmaterial schneller reagiert als detaillierte Anweisungen. – zipzit

Antwort

2
"SELECT userName, (
       6371 * ACOS(COS(RADIANS( " . $currentLatitude . ")) * COS(RADIANS(location.latitude)) * COS(RADIANS(location.longitude) - RADIANS(" . $currentLongitude . ")) + 
           SIN(RADIANS( " . $currentLatitude . ")) * SIN(RADIANS(location.latitude))) 
           ) `distance` " 

Dieser berechnet den Abstand von dem Punkt, dass ich in der Datenbank aus der Ferne gespeichert i im $ currentLatitude und $ currentLongitude bieten. Es funktioniert gut für mich.

+0

Dank @Darshan, ich habe das gleiche in SQL-Abfrage verwendet, aber es gibt Ihnen nur Verschiebung (keine Entfernung auf der Straße). und ich suche nach Entfernung in Meter auf der Straße. – Mani

Verwandte Themen