/// <summary> /// Obtiene la distancia entre dos coordenadas geográficas /// </summary> /// <param name="long1InDegrees">Longitud del punto 1 en grados</param> /// <param name="lat1InDegrees">Latitud del punto 1 en grados</param> /// <param name="long2InDegrees">Longitud del punto 2 en grados</param> /// <param name="lat2InDegrees">Latitud del punto 2 en grados</param> /// <returns>Distancia entre los dos puntos en metros</returns> private static double GetDistance(decimal long1InDegrees, decimal lat1InDegrees, decimal long2InDegrees, decimal lat2InDegrees) { double lats = (double)(lat1InDegrees - lat2InDegrees); double lngs = (double)(long1InDegrees - long2InDegrees); //Paso a metros double latm = lats * 60 * 1852; double lngm = (lngs * Math.Cos((double)lat1InDegrees * Math.PI / 180)) * 60 * 1852; double distInMeters = Math.Sqrt(Math.Pow(latm, 2) + Math.Pow(lngm, 2)); return distInMeters; }