Coordinates by start point, azimuth and distance
Calculate geographical coordinates of a 2nd point by given 1st point, azimuth and distance
I searched the internet and didn't find an easy formula. And it's not that easy developing one
by myself. Nevertheless I found source code for eliptical objects calculations, which I simplified.
This is the Pascal source code: Download Vincclc2.pas.
l1,b1: longitude, latitude coordinates of start point in degrees (west/south:- east/north:+)
azi: azimuth in degrees
dist: distance in km
computes:
l2,b2: coordinates target
az21: reverse azimuth
The formula
===========
lat1 := b1*pi/180;
az12 := azi*pi/180;
sinu1 := Sin(lat1);
cosu1 := Cos(lat1);
sina := cosu1 * Sin(az12);
ss := Sin(dist/6378);
cs := Cos(dist/6378);
b2 := Arctan((sinu1*cs+cosu1*ss*Cos(az12))/(Sqrt(sqr(sina) + sqr(sinu1 * ss - cosu1 * cs * Cos(az12)))))*180/pi;
l2 := l1+Arctan(ss * Sin(az12)/( cosu1 * cs - sinu1 * ss * Cos(az12)))*180/pi+720;
az21 :=Arctan(sina/( -sinu1 * ss + cosu1 * cs * Cos(az12)))*180/pi+180;
while b2>90 do b2:=b2-360;
while l2>180 do l2:=l2-360;
while az21>360 do az21:=az21-360;