OBLICZANIE ODLEGŁOŚCI NA PODSTAWIE GPS.txt

(2 KB) Pobierz
Obliczenia najwygodniej przeprowadzić w stopniach dziesiętnych, ze względu na popularnoć takiego sposobu przedstawiania współrzędnych w urzšdzeniach GPS.

Najmniejsza odległoć w kilometrach między dwoma punktami A i B na powierzchni ziemi, może być okrelona z następujšcej zależnoci:

d=(2*?*R*q)/360°

gdzie R=6400 km - promień ziemi

q - kšt między dwoma promieniami ziemi, przechodzšcymi między punkty A i B, można go wyliczyć z zależnoci:

cos q = sin f1 * sin f2 + cos f1 * cos f2 * cos( a1 - a2)

gdzie f1 i f2 - szerokoci geograficzne punktów A i B odczytane z GPS, a a1 i a2 długoci geograficzne punktów A i B odczytane z GPS.



Współrzędne można odczytać z bazy danych zapisanej w Access 2003 i dostępnych w punkcie - WSPÓŁRZĘDNE GEOGRAFICZNE GPS

wartoć liczby ?=3,14159265358979323846264338327950288419716939937510582097494459230781640628620899862803482534211706798214808651328230664709384460955058223172535940812848 1117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006606315588174881520 9209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298 3367336244065664308602139494639522473719070217986094370277053921717629317675238467481846766940513200056812714526356082778577134275778960917363717872146844090122495343014654958 5371050792279689258923542019956112129021960864034418159813629774771309960518707211349999998372978049951059731732816096318595024459455346908302642522308253344685035261931188171 0100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989 








function Dist(Lat1,Lon1,Lat2,Lon2:Double):Double;
const dz=12756.274;//rednica Ziemi na równiku [km]
var a,b:Double;
begin
  a:=(Lon2-Lon1)*Cos(Lat1*pi/180);
  b:=(Lat2-Lat1);
  Result:=Sqrt(a*a+b*b)*pi*dz/360;//[km]
end;
Zgłoś jeśli naruszono regulamin