Increible lo que algunas personas son capaces de hacer con javascript y una idea clara de lo que se quiere conseguir.
La formula Haversine
La formula Haversine es una ecuación muy importante para la navegación en la que podemos obtener la distancia entre dos puntos geográficos (longitud y latitud) dados.
Formula:
R = earth’s radius (mean radius = 6,371km)
Δlat = lat2− lat1
Δlong = long2− long1
a = sin²(Δlat/2) + cos(lat1).cos(lat2).sin²(Δlong/2)
c = 2.atan2(√a, √(1−a))
d = R.c
Versión en Javascript
var R = 6371; // km
var dLat = (lat2-lat1).toRad();
var dLon = (lon2-lon1).toRad();
var a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(lat1.toRad()) * Math.cos(lat2.toRad()) *
Math.sin(dLon/2) * Math.sin(dLon/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
Simplemente increible la complejidad que le podemos dar a nuestros scripts Javascript.
5 comentarios, 1 referencias
+
#