Нет, но я могу предложить более короткий, более быстрый, но гораздо менее точный способ получения относительных расстояний:
public static double RelativeDistance(LatLong from, LatLong to)
{
return (from.Latitude - to.Latitude) * (from.Latitude - to.Latitude) + (from.Longitude - to.Longitude) * (from.Longitude - to.Longitude);
}
Возвращает значение относительно квадратарасстояние в терминах проекции координат на квадратную двумерную сетку (как если бы мир представлял собой прямоугольник 2: 1).Это настолько бесполезно для реальных расстояний, что я даже не потрудился бы взять квадратный корень, чтобы вернуть его обратно пропорциональному проекции (поскольку проекция глупа), но он может служить для быстрой сортировки по относительным расстояниям внутри такихнебольшая область (и достаточно далеко от полюсов), что грубая неточность не имеет большого значения.
Следовательно, это не поможет вам рассчитать ваши расходы на топливо, но поможет вам определить, какой паб(наверное) ближайший.Если вы хотите отсортировать по относительному расстоянию до заданной точки, это может хорошо послужить, и его скорость будет благом.Вне этого использования это бессмысленно.