Geographic distance between 2 locations
From http://www.movable-type.co.uk/scripts/latlong.html and http://cwestblog.com/2012/11/12/javascript-degree-and-radian-conversion/
// Converts from degrees to radians.
Math.toRadians = function(degrees) {
return degrees * Math.PI / 180;
};
// Converts from radians to degrees.
Math.toDegrees = function(radians) {
return radians * 180 / Math.PI;
};
var R = 6371000; // metres
var φ1 = Math.toRadians(lat1);
var φ2 = Math.toRadians(lat2);
var Δφ = Math.toRadians(lat2-lat1);
var Δλ = Math.toRadians(lon2-lon1);
var a = Math.sin(Δφ/2) * Math.sin(Δφ/2) +
Math.cos(φ1) * Math.cos(φ2) *
Math.sin(Δλ/2) * Math.sin(Δλ/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;