No subject

Bob Sneidar bobsneidar at iotecdigital.com
Fri Apr 3 17:30:31 EDT 2020


Ralph, this is brilliant. I remember trying to do something similar years ago, and giving up because I didn't know how to do the math. I suck at math, or rather I am too lazy and impatient to work the problem. 

Bob S

> On Apr 3, 2020, at 14:27 , Ralph DiMola via use-livecode <use-livecode at lists.runrev.com> wrote:
> 
> Graham,
> 
> This my distance calculation for what it's worth.
> 
> Function distance lat1, lon1, lat2, lon2, unit
>   -- Calculate Distance between to points
>   --
>   --lat1, lon1, lat2, lon2 are in deg.fractionalDegrees
>   -- Unit
>   --     if empty then miles
>   --     K = kilometers
>   --     N = nautical miles
>   local theta
>   local dist
> 
>   Put lon1 - lon2 into theta
>   put Sin(deg2rad(lat1)) * Sin(deg2rad(lat2)) + Cos(deg2rad(lat1)) * Cos(deg2rad(lat2)) * Cos(deg2rad(theta)) into dist
> 
>   put Acos(dist) into dist
>   put rad2deg(dist) into dist
>   put dist * 60 * 1.1515 into dist
> 
>   switch unit
>      case "K"
>         put dist * 1.609344 into dist
>      case "N"
>         put dist * 0.8684 into dist
>   end switch
> 
>   Return dist
> 
> End distance
> 
> 
> Function rad2deg rad
>   Return rad / PI * 180.0
> end rad2deg
> 
> 
> Ralph DiMola
> IT Director
> Evergreen Information Services
> rdimola at evergreeninfo.net





More information about the use-livecode mailing list