JSFiddle - React, Tailwind, and code Playground
by John Schulz
JavaScript
function metersPerDegreeLongitudeAt(latitude) {
latitude = parseFloat(latitude || 0);
var radius = 6378137,
PI_180 = (Math.PI / 180),
PI2 = (2 * Math.PI),
radians = (latitude / 360) * PI2,
meters = PI_180 * radius * Math.cos(radians);
return meters;
}
var locations = {
'St. Petersburg': 60,
'Greenwich': 51.4847,
'Bordeaux': 45,
'New Orleans': 30,
'Quito': 0
};
// http://en.wikipedia.org/wiki/Geographic_coordinate_system
for (var city in locations) {
var latitude = locations[city];
var meters = metersPerDegreeLongitudeAt(latitude);
console.log('At', latitude, 'degrees latitude (', city, ') each degree longitude is', meters, 'meters apart');
}