menú
¿Música de YouTube sin molestos comerciales? ¡Ahora es posible!
TubeFiesta es una aplicación que te permite reproducir música de YouTube como un reproductor tradicional.
Crear listas, reproducción aleatoria, repetir, y hasta exportar el video a otra pantalla.
Conocer más Ir a tfiesta.com

Distancia entre dos coordenadas geograficas

Publicado el 24/07/2014 | 1251 visitas

El uso de sistemas de geolocalización cada vez está más cerca de todos nosotros, tanto los que consumimos programas como los que las desarrollamos tenemos a nuestra disposición una cantidad de herramientas para hacer esto posible y darle funcionalidad "descrestante" a nuestros aplicativos.

Al utilizar estos servicios vemos necesario implementar ciertas características y funcionalidades que son desconocidas para nosotros y una de ellas es el cálculo entre dos coordenadas.

coordenadas geograficas

Por lo anterior quiero compartir con ustedes el siguiente código que realiza el calculo y retorna el valor en Kilómetros, valor que sin necesidad de ser expertos en matemáticas podremos convertir en cualquier unidad de medida como metros y hasta centímetros.

public const double RadioTierra = 6371;
public static double ObtenerDistancia(double lat1, double lng1, double lat2, double lng2)
{
    double distance = 0;
    double Lat = (lat2 - lat1) * (Math.PI / 180);
    double Lon = (lng2 - lng1) * (Math.PI / 180);
    double a = Math.Sin(Lat / 2) * Math.Sin(Lat / 2) + Math.Cos(lat1 * (Math.PI / 180)) * Math.Cos(lat2 * (Math.PI / 180)) * Math.Sin(Lon / 2) * Math.Sin(Lon / 2);
    double c = 2 * Math.Atan2(Math.Sqrt(a), Math.Sqrt(1 - a));
    distance = RadioTierra * c;
    return distance;
}

Este está construido en C# y como lo dije antes, retornará el valor en Kilómetros.

Talvez te interese...

Tutorial de sockets en c# con ejemplos - Parte 2 - UDP
Tutorial de sockets en c# con ejemplos - Parte 1
[solución] No puede obtener acceso a la página solicitada debido a la configuración de la extensión
[solución] El proveedor de almacenamiento especificado no se encuentra en la configuración
blog comments powered by Disqus