Formuła haversine może być uproszczona, gdy pracujesz tylko w kierunkach północ-południe i wschód-zachód.
Jeśli obwód Ziemi wynosi C, punkt w odległości d kilometrów na południe od danego punktu wynosi 360 * d/C stopni na południe. Punkt d km na wschód to 360 * d/(C * cos (szerokość geograficzna)) stopni na wschód. Cosinus w mianowniku pochodzi z faktu, że długość długości geograficznej na danej szerokości geograficznej jest mniejsza od równika o tyle.
Więc jeśli the Earth's circumference jest 40075,04 kilometrów, aby przejść 5 m do Północ/Południe chcesz dodać/odjąć 0.0000449 od szerokości geograficznej i wykorzystać tę samą długość. Aby przenieść 5 m na zachód/wschód, należy użyć tej samej szerokości geograficznej i dodać/odjąć 0.0000449/cos (szerokość geograficzna) do długości geograficznej. Nie zapomnij jednak o skrzyniach brzegowych: w pobliżu biegunów musisz zacisnąć szerokość geograficzną do 90 °, a w pobliżu długości 180 ° będziesz też dodawał lub odejmował 360 °, aby utrzymać długość geograficzną w odpowiednim zakresie.
Z numerów zakres okazuje się być w przybliżeniu:
latitude: [23.23903 ; 23.23911]
longitude: [50.45781 ; 50.45791]
Aktualizacja: Należy pamiętać, że to wciąż zakłada, że Ziemia jest idealną sferą, which it's not. System GPS na przykład modeluje Ziemię jako elipsoidę, gdzie równik ma 6378.137 km, a bieguny znajdują się 6356.7523142 km od środka Ziemi. Różnica wynosi około 1/300. i ma znaczenie dla wielu aplikacji, ale w tym przypadku jest w granicach błędu.
Korygowanie formuły dla długości geograficznej powinno być proste, ponieważ podobieństwa są nadal okręgami: należy po prostu zamienić cos(latitude)
dla poprawnego współczynnika. Obliczanie wartości correct latitude jest trudniejsze, ponieważ południki nie są okręgami, ale elipsami, a długość łuku elipsy nie może zostać obliczona przy użyciu funkcji elementarnych, więc należy zastosować przybliżenia.
Sprawdź z tego: http://stackoverflow.com/questions/639695/how-to-convert-latitude-lub-length-to-meters – Trinimon
możliwy duplikat [znalezienie współrzędnej w pewnej odległości od źródła] (http: // stackoverflow.com/questions/14398378/finding-a-coordinate-at-some-distance-from-the-source) – Joni