En este breve post vamos a describir una fórmula bastante sencilla para calcular la distancia en Kilometros (km) entre dos puntos en línea recta, conocidos su latitud y longitud. Dada la sencillez de la fórmula, los resultados sólo son aproximados, pero con un error de precisión bastante aceptable en la mayoría de los casos (yo estoy empleando esta fórmula en mi aplicación para buscar colegios donde busco los colegios a una cierta distancia de un punto determinado por el usuario).
Para facilitar la comprensión vamos a ver un ejemplo:
Queremos calcular la distancia en Km que hay entre la Plaza del Sol en Madrid y el estadio del Real Madrid, el Santiago Bernabeu. Para ello debemos disponer de la latitud y longitud de estos puntos y en el siguiente formato (fácilmente obtenibles usando los mapas de google o Google Maps):
Plaza del Sol (Madrid): latitud1: 40.417, longitud1: -3.703
Estadio Santiago Bernabeu: latitud2: 40.453, longitud2: -3.688
(coordenadas aproximadas)
En primer lugar aplicamos la fórmula de la distancia euclídea entre estos 2 puntos, como si estuviéramos en coordenadas cartesianas:
d^2 = (latitud1 - latitud2)^2 + (longitud1 - longitud2)^2 y a este dato lo llamo D para abreviar, que para nuestro ejemplo da:
D=0,001521
Finalmente aplicamos la fórmula mágica, descubierta por mi y que no verás en ningún otro sitio, así que considérate privilegiado:
distancia = sqrt((D/2))*157,4 [km] (donde sqrt es la raíz cuadrada, D es el dato que acabamos de calcular y 157,4 son los kilometros entre los puntos con latitud y longitud (1,1) y (0,0) )
que para nuestro ejemplo sale:
distancia = 4,34 km
lo cual podremos comprobar que es un resultado bastante aproximado en Google Earth (4,20 km) o en cualquier otro medidor de distancias misterioso que encontréis por internet, pero del que no dispondréis la fórmula que emplean para calcularlo.