La formula di haversine può essere semplificata molto quando si lavora solo nelle direzioni nord-sud e est-ovest.
Se la circonferenza della Terra è C, il punto a d chilometri a sud di un dato punto è 360 * d/C gradi a sud. Il punto a d chilometri a est è 360 * d/(C * cos (latitudine)) gradi a est. Il coseno nel denominatore deriva dal fatto che la lunghezza della longitudine a una data latitudine più breve dell'equatore di quello stesso valore.
Quindi, se the Earth's circumference è 40075,04 chilometri, per passare 5 m al nord/sud si dovrebbe aggiungere/sottrarre 0,0000,449 mila dalla latitudine e utilizzare la stessa longitudine. Per spostarsi di 5 m verso ovest/est, utilizzare la stessa latitudine e aggiungere/sottrarre 0,0000449/cos (latitudine) alla longitudine. Non dimenticarti dei casi limite: vicino ai poli devi serrare la latitudine a 90 ° e vicino alla longitudine di 180 ° anche tu aggiungere o sottrarre 360 ° per mantenere la longitudine nell'intervallo corretto.
Con i numeri della gamma risulta essere di circa:
latitude: [23.23903 ; 23.23911]
longitude: [50.45781 ; 50.45791]
Aggiornamento: Si noti che questo presuppone ancora che la Terra è una sfera perfetta, which it's not. Il sistema GPS per esempio modella la Terra come un ellissoide dove l'equatore si trova a 6378.137 km ei poli si trovano a 6356.7523142 km dal centro della Terra. La differenza è di circa 1/300th e conta molto per molte applicazioni, ma in questo caso è all'interno del margine di errore.
Correggere la formula per la longitudine dovrebbe essere semplice poiché i paralleli sono ancora cerchi: dovresti solo scambiare cos(latitude)
per il coefficiente corretto. Il calcolo dello correct latitude è più difficile perché i meridiani non sono cerchi ma ellissi e la lunghezza dell'arco di un'ellisse non può essere calcolata utilizzando le funzioni elementari, quindi è necessario utilizzare le approssimazioni.
Controllare questo: http://stackoverflow.com/questions/639695/how-to-convert-latitude-or-longitude-to-meters – Trinimon
possibile duplicato di [trovare una coordinata a una certa distanza dalla sorgente] (http: // stackoverflow.com/questions/14398378/finding-a-coordinate-at-some-distance-from-the-source) – Joni