[aprssig] A math problem concerning Lat and Long
Robert Bruninga bruninga at usna.eduWed Oct 6 01:00:05 UTC 2004
- Previous message: [aprssig] A math problem concerning Lat and Long
- Next message: [aprssig] December 31, 1969
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
>>> kb2scs at optonline.net 10/5/04 8:42:00 PM >>> >> >Given a known Latitude and Longitude .. >After moving this distance and direction what is your >new Latitude and Longitude? Here is the APRSdos code for determining the distance between any two lat/longs. To break it down to the North and West componet, just take the Sin and Cos components of the resulting vector SUB RangeRings (d,rng) STATIC Lcux, Lcuy, LaO, LoO 'convert to radians r = 180 / 3.14159 LA1 = LAT1 / r: LA2 = LAT2/ r LO1 = LON1/ r: LO2 = LON2/ r xj# = SIN(LA1) * SIN(LA2) + COS(LA1) * COS(LA2) * COS(LO2 - LO1) REM xj= cos(D/(60*r)) REM sin(D/(60*r))=sqr(1-xj^2) xk# = SQR(1 - xj# ^ 2) IF ABS(CDX - CPX) = 0 THEN d = 60 * ABS(CDY - CPY) ELSEIF xk# <> 0 THEN d = 60 * r * (90 / r - ATN(xj# / xk#)) xi# = (SIN(LA2) - SIN(LA1) * xj#) / (xk# * COS(LA1)) xh# = r * (90 / r - ATN(xi# / (SQR(1 - xi# ^ 2)))) a = SIN((LO2 - LO1) / r) IF a > 0 THEN AZ = 360 - xh# ELSE AZ = xh# ELSE AZ = 0: d = 0 END IF 'at this point d is in nautical miles in a direction AZ. 'to convert to range in statute miles multiply by 1.1508 'and I convert to feet if less than .2 miles rng = d * 1.1508 IF rng < .2 THEN rng = rng * 5280: x$ = "ft" end sub de WB4APR, Bob
- Previous message: [aprssig] A math problem concerning Lat and Long
- Next message: [aprssig] December 31, 1969
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the aprssig mailing list