Skip to content

Instantly share code, notes, and snippets.

@shaunjanssens
Created November 23, 2016 20:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shaunjanssens/8b636a6518955d6d3a18b928cb878801 to your computer and use it in GitHub Desktop.
Save shaunjanssens/8b636a6518955d6d3a18b928cb878801 to your computer and use it in GitHub Desktop.
distance: function(lat1, lon1, lat2, lon2) {
var p = 0.017453292519943295;
var c = Math.cos;
var a = 0.5 - c((lat2 - lat1) * p)/2 +
c(lat1 * p) * c(lat2 * p) *
(1 - c((lon2 - lon1) * p))/2;
return (12742 * Math.asin(Math.sqrt(a))) * 1000;
},
angle: function(lat1, lon1, lat2, lon2) {
var dLon = (lon2 - lon1);
var y = Math.sin(dLon) * Math.cos(lat2);
var x = Math.cos(lat1) * Math.sin(lat2) - Math.sin(lat1)
* Math.cos(lat2) * Math.cos(dLon);
var brng = Math.atan2(y, x);
brng = this.rad2deg(brng);
brng = (brng + 360) % 360;
return brng;
},
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment