Stránka 1 z 1

není přesný výpočet vzdálenosti dle zaznamenaných GPS souřadnic

Napsal: 11 Dec 2018 23:14
od okoun
nějak se mi nedaří přijít k přesnějšímu číslu při výpočtu najetých kilometrů dle zaznamenaných souřadnic.
používám vzorec dist = acos (sin(lat1) * sin(lat2) + cos(lat1) * cos(lat2) * cos(lng1 - lng2) ) * (6371 / 360 * 2 * Pi)

dle mapy jsem měl ujet 57km v reálu je to dle vzorce 68 km nevím čím to, jestli je špatný vzorec nebo se prostě dle gps nedá dojít k přesnému výpočtu?

Re: není přesný výpočet vzdálenosti dle zaznamenaných GPS souřadnic

Napsal: 12 Dec 2018 07:35
od zajdee
Souradnice uz mate v radianech? Kazdopadne ve vzorci chybi nektere operace. Ja pouzivam:

Kód: Vybrat vše

set _d2r = (PI() / 180);
set dlng = (lng2 - lng1) * _d2r;
set dlat = (lat2 - lat1) * _d2r;
set a = pow(sin(dlat / 2), 2) + cos(lat1 * _d2r) * cos(lat2 * _d2r) * pow(sin(dlng /2), 2);
set c = 2 * atan2(sqrt(a), sqrt(1 - a));
set d = 6378.1370 * c;

Na vstupu mam souradnice ve stupnich, k prevodu na radiany dochazi pomoci nasobeni _d2r; pow() je mocnina, zbytek funkci by mel byt samovysvetlujici. (Kod je z mysql funkce.)

Re: není přesný výpočet vzdálenosti dle zaznamenaných GPS souřadnic

Napsal: 12 Dec 2018 09:17
od okoun
já mám jako souřadnice například: 50.006496666667 a 14.420183333333 zkusil jsem ten kod ale je to v podstatě stejné možná že se to ted rozchází jen o 9 km na místo 10 km :D