Карты Google рассчитывают неправильное расстояние?

StackOverflow https://stackoverflow.com/questions/1061286

  •  21-08-2019
  •  | 
  •  

Вопрос

Мне удалось заставить две функции рассчитывать расстояния между двумя точками на карте Google.Один я собрал (украл) из разных мест в Интернете, а другой — с помощью метода GLatLng.distanceFrom в API Карт Google.

Причина, по которой я использую две функции, заключается в том, что я заметил что-то странное в результатах, которые я получал от Google, например, расстояние между Лэндс-Эндом и Джоном-О-Гротсом в Великобритании возвращается следующим образом.

  • Моя функция:985 км
  • Google:986 км
  • Википедия:970 км

Разница в 15/16 км от результата Википедии связана с тем, что Google возвращает результат местоположения примерно в 15 км от фактического Джона О Гроутса.Так что это примерно так.

Затем я проверил расстояние между Лондоном и Миланом и получил

  • Моя функция:1232км
  • Google:1234км
  • Вольфрам Альфа:958,5 км

Значит, кто-то находится за пределами 250 км.Затем я попробовал Лондон в Нью-Йорк

  • Моя функция:8244км
  • Google:8254км
  • Вольфрам Альфа:5581км

Обычно расстояние между Лондоном и Нью-Йорком составляет около 5560 км.Но теперь и моя функция, и функция Google, похоже, далеки от цели.

Функция, которую я использую можно найти здесь.Приношу извинения автору за отсутствие ссылки на оригинальный сайт, но макет действительно сбивает с толку.Я использую функцию distHaversine.

Должен признать, что математика выходит далеко за рамки моего уровня комфорта, но суть я уловил, и, насколько я понимаю, Google тоже использует метод Хаверсина.Я также понимаю, что оно может быть отклонено примерно на 0,3%, но это не объясняет наблюдаемых мной различий.И еще меня смущает тот факт, что иногда оно соответствует, а иногда и далеко от общепринятых расстояний между местами.Кажется, что чем больше расстояние, тем оно дальше.

Так кто же не прав.Google и функция, которую я использую, или все остальные?

Это было полезно?

Решение 2

Как оказалось, у меня были неправильные параметры широты и долготы.

Другие советы

Карты Google не рассчитывают кратчайшее прямое расстояние — оно проходит по дорогам и (воздуху, воде, ?)

Если я не ошибаюсь:

Может ли несоответствие возникнуть из-за того, что Google Maps рассчитывает расстояние, которое вы проезжаете, а не «по прямой»?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top