#distance#haversine#coordinates#great circle#bearing

Как рассчитать расстояние между двумя координатами (формула гаверсинусов)

Узнайте, как рассчитать расстояние между двумя GPS-координатами по формуле гаверсинусов: подробный пример, начальный азимут и почему реальные маршруты всегда длиннее.

by GPS Pins Team3 мин чтения

У вас есть две GPS-координаты — как далеко они друг от друга? Ответ даёт одна формула, которой пользуются пилоты, моряки и все картографические приложения: формула гаверсинусов, вычисляющая расстояние по дуге большого круга на поверхности Земли. Вот как она работает — с примером, который можно проверить самостоятельно.

Прямая линия на сфере: большой круг

На плоской карте кратчайший путь между двумя точками — прямая. На сфере это дуга большого круга — окружности, полученной сечением сферы через её центр и обе точки. Именно поэтому дальние рейсы, скажем, из Парижа в Токио изгибаются над Сибирью вместо прямой на карте: «кривой» маршрут на самом деле кратчайший.

Формула гаверсинусов

Для двух точек с широтой φ и долготой λ (в радианах):

a = sin²(Δφ/2) + cos φ₁ · cos φ₂ · sin²(Δλ/2)
d = 2R · asin(√a)

где R — средний радиус Земли, 6 371 008,8 метра. Формула рассматривает Землю как сферу, что даёт погрешность лишь около 0,5% относительно истинной эллипсоидальной формы — пренебрежимо мало почти для любых практических задач.

Пример: Москва — Санкт-Петербург

  • Москва: 55.7558, 37.6173
  • Санкт-Петербург: 59.9311, 30.3609

По шагам:

  1. Δφ = 59.9311 − 55.7558 = 4.1753° → 0.07288 rad
  2. Δλ = 30.3609 − 37.6173 = −7.2564° → −0.12665 rad
  3. a = sin²(0.03644) + cos(0.9731) · cos(1.0460) · sin²(−0.06332) ≈ 0.002456
  4. d = 2 × 6 371 008,8 × asin(√0.002456) ≈ 632 км

Реальное расстояние по автотрассе между городами — около 710 км. Расстояние по прямой — это всегда нижняя граница, а не оценка дороги.

Начальный азимут: в какую сторону двигаться

Те же две точки задают и начальный азимут — направление по компасу в начале пути:

θ = atan2( sin Δλ · cos φ₂ , cos φ₁ · sin φ₂ − sin φ₁ · cos φ₂ · cos Δλ )

Для маршрута Москва → Санкт-Петербург это примерно 320°, то есть северо-запад. Обратите внимание на слово начальный: на длинных маршрутах азимут непрерывно меняется вдоль большого круга. Рейс Париж → Лос-Анджелес взлетает курсом на северо-запад, хотя на плоской карте Лос-Анджелес юго-западнее Парижа.

Почему реальные маршруты длиннее

Расстояние по дуге большого круга — это цифра «по прямой». Реальные поездки добавляют:

  • Дороги и железные пути, следующие рельефу, долинам и границам участков
  • Морские пути, ограниченные береговой линией, каналами и схемами разделения движения
  • Авиатрассы, зависящие от воздушных коридоров, погоды и струйных течений

Практическое правило: расстояние по дорогам в развитой сети примерно на 20–40% больше расстояния по прямой.

Пропустите вычисления

Если нужен просто результат — наш бесплатный калькулятор расстояний делает всё это в один клик: щёлкните две точки на карте (или введите координаты либо адреса) и получите расстояние по дуге большого круга в километрах, милях или морских милях плюс начальный азимут. Чтобы сначала преобразовать формат координат, используйте конвертер координат.

Похожие статьи

#UTM#coordinates#GIS

Что такое система координат UTM? Зоны, восточное и северное смещение

Разберитесь в системе координат UTM (универсальная поперечная проекция Меркатора): как работают её 60 зон, что означают easting и northing, и когда использовать UTM вместо широты/долготы.

3 мин чтения
Читать далее
#GPS#coordinates#navigation

Как использовать GPS-координаты: открыть в картах и преобразовать в адрес (обратное геокодирование)

Узнайте, как открывать GPS-координаты в Google Maps, Apple Maps и Kakao Maps и как обратное геокодирование превращает широту и долготу в читаемый адрес.

6 мин чтения
Читать далее
#GPS#latitude#longitude

Широта и долгота: Полное руководство

Все, что вам нужно знать о широте и долготе - от базовых концепций до продвинутых вычислений. Узнайте, как эти координаты определяют каждое местоположение на Земле с точностью.

12 мин чтения
Читать далее