Does anyone have an algorithm to determine the direction from one lat/lon to another (pseudo-code):
CalculateHeading( lat1, lon1, lat2, long2 ) returns string heading
Where heading is e.g. NW, SW, E, etc.
Basically, I have two points on a map and I want to get a general idea of the direction taking into account that 50 miles East and one mile North is simply East and not Northeast.
This site has the basic algorithm:
UPDATED: See here for complete algorith Mapping Math and Javascript
That’ll give you a number between 0 and 360 then it’s just a matter of having a simple lookup:
It’s important to note that your bearing actually changes as you move around the earth. The algorithm above shows you initial bearing, but if you’re traveling a long distance, your bearing to be significantly different when you reach the destination (if you’re only traveling a short distance [< a few hundred kms] then it probably won’t change enough to be a concern).