Skip to content

Instantly share code, notes, and snippets.

@saarons
Created April 17, 2010 05:45
Show Gist options
  • Save saarons/369320 to your computer and use it in GitHub Desktop.
Save saarons/369320 to your computer and use it in GitHub Desktop.
(def earth-radius 6371)
(defn degree-to-radian [deg]
(* deg (/ Math/PI 180)))
(defn distance [lata lnga latb lngb]
(let [lata-r (degree-to-radian lata)
lnga-r (degree-to-radian lnga)
latb-r (degree-to-radian latb)
lngb-r (degree-to-radian lngb)
delta-lat (- latb-r lata-r)
delta-lng (- lngb-r lnga-r)]
(* earth-radius 2 (Math/asin (Math/sqrt (+ (Math/pow (Math/sin
(/ delta-lat 2)) 2) (* (Math/cos lata-r) (Math/cos latb-r)
(Math/pow (Math/sin (/ delta-lng 2)) 2))))))))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment