viernes, 11 de marzo de 2016

¿CÓMO CALCULAR LA DISTANCIA ENTRE DOS PUNTOS GEOGRÁFICOS UTILZANDO PYTHON?


Ejercicio:

Encontrar la distancia entre dos puntos geográficos usando la fórmula de Harvesine, implementarla en Python y comparar el resultado con Google Earth.

Para ello utilizamos nuestro código en Python:

import math

def haversine(lat1, lon1, lat2, lon2):
    rad=math.pi/180
    dlat=lat2-lat1
    dlon=lon2-lon1
    R=6372.795477598
    a=(math.sin(rad*dlat/2))**2 + math.cos(rad*lat1)*math.cos(rad*lat2)*(math.sin(rad*dlon/2))**2
    distancia=2*R*math.asin(math.sqrt(a))
    return distancia

¿Cómo funciona?

Buscamos un primer punto en nuestro ejemplo escogemos uno llamado caribe, este posee coordenadas (6.27823496943,-75.5694735416)


y tenemos otro punto al que llamé cancha, con coordenadas (6.28331696378, -75.5689742567)


Teniendo nuestros puntos ejecutamos nuestro código:

Luego comparamos el resultado que nos entrega Google Earth.

Tenemos que el resultado dado por nuestro código de Python fue: 0.5679401706854281 Km.
Y el resultado dado por Google Earth fue: 0,56 Km.

Acá dejo un video con otro punto:



Espero haya sido de su utilidad cualquier duda o sugerencia estaré atento.