Расчёт расстояний
Нужно узнать, сколько километров от Москвы до Новосибирска, или расстояние между двумя точками на чертеже – без формул и атласов не обойтись. Расчёт расстояний нужен логистам для маршрутов, строителям для разбивки планов, программистам для геолокации и путешественникам для оценки времени в пути. Калькулятор ниже считает расстояние по координатам с учётом формы Земли.
Виды расчёта расстояний
Способ расчёта зависит от задачи и масштаба:
| Тип | Где применяется | Формула |
|---|---|---|
| Евклидово (на плоскости) | Чертежи, планы помещений, 2D-игры | Теорема Пифагора |
| Ортодромное (по дуге большого круга) | Авиация, морская навигация, GPS | Гаверсинус |
| По дорожной сети | Автомаршруты, логистика, курьерская доставка | Граф дорог (Дейкстра, A*) |
Для расстояний в пределах одного города или здания достаточно плоскостных формул. При удалении точек на сотни километров кривизна Земли становится существенной – без сферической геометрии результат будет неточным.
Расчёт расстояния между двумя точками на плоскости
Для двух точек A(x₁, y₁) и B(x₂, y₂) на координатной плоскости расстояние вычисляется по теореме Пифагора:
d = √((x₂ − x₁)² + (y₂ − y₁)²)
Горизонтальная разница Δx = x₂ − x₁ и вертикальная Δy = y₂ − y₁ образуют катеты прямоугольного треугольника, а расстояние d – гипотенузу.
Пример. Точка A(3, 2), точка B(7, 5):
- Δx = 7 − 3 = 4
- Δy = 5 − 2 = 3
- d = √(16 + 9) = √25 = 5
Эту формулу используют в чертёжных программах, системах CAD, навигации внутри помещений и при расчёте дистанции спрайтов в 2D-играх. Она не учитывает кривизну поверхности, поэтому для географических координат не подходит.
Расчёт расстояния по координатам на карте
Когда точки заданы широтой и долготой, их нельзя подставить в плоскую формулу – Земля имеет форму сферы. Кратчайшее расстояние между двумя точками на сфере проходит по дуге большого круга (ортодромии) и вычисляется формулой гаверсинуса.
Формула гаверсинуса
Для двух точек с координатами (φ₁, λ₁) и (φ₂, λ₂), где φ – широта, λ – долгота (в радианах):
- a = sin²(Δφ/2) + cos(φ₁) · cos(φ₂) · sin²(Δλ/2)
- c = 2 · atan2(√a, √(1 − a))
- d = R · c
Где R – средний радиус Земли (6 371 км), Δφ = φ₂ − φ₁, Δλ = λ₂ − λ₁.
Функция гаверсинуса: hav(θ) = sin²(θ/2) = (1 − cos θ)/2. Название происходит от «half versed sine» – половина версинуса.
Пример. Москва (55,7558° N, 37,6176° E) → Санкт-Петербург (59,9343° N, 30,3351° E):
- Переводим градусы в радианы
- a ≈ 0,0062
- c ≈ 0,1577 рад
- d ≈ 6 371 × 0,1577 ≈ 635 км по прямой
Для сравнения: по трассе М11 расстояние составляет около 700–720 км – дорога длиннее из-за обходов, развязок и рельефа.
Почему гаверсинус, а не сферическая теорема косинусов
Сферическая теорема косинусов даёт тот же результат математически, но при малых расстояниях (порядка 1 км) значение cos(d/R) ≈ 0,99999999 – разница теряется из-за ограничений точности чисел с плавающей точкой. Формула гаверсинуса использует синусы и устойчива при любых расстояниях.
Чем отличается расстояние по прямой от расстояния по дорогам?
Это два принципиально разных расчёта:
По прямой (ортодромия). Кратчайший путь по поверхности сферы. Не учитывает реки, горы, границы, типы дорог. Подходит для оценки радиуса покрытия, расчёта зоны действия антенн, радиосвязи, авиамаршрутов.
По дорогам. Реальный путь по сети автомобильных дорог. Учитывает направление движения, развязки, паромы, платные участки, ограничения по весу и высоте. Используется для логистики, расчёта топлива и времени доставки. Алгоритм строит маршрут по графу дорожной сети (Дейкстра или A*), суммируя длины всех участков.
Разница между ними может быть от 5% на равнине до 30–50% в горной местности или при отсутствии прямых трасс.
Примеры расчёта расстояний
Между городами: Москва – Казань
Координаты Москвы: 55,7558° N, 37,6176° E. Казани: 55,7887° N, 49,1221° E. По формуле гаверсинуса расстояние по прямой – около 720 км. По трассе М7 (Волга) – около 820 км.
По GPS-координатам: определение зоны доставки
Координаты склада: 55,7963° N, 37,7022° E. Координаты клиента: 55,7311° N, 37,6286° E. Расстояние по прямой – примерно 8 км. При расчёте по улицам города с учётом одностороннего движения – 11–13 км.
На плоскости: расстояние между станками в цеху
Станок A стоит на отметке (2, 4), станок B – на (12, 10) в метрах. d = √((12−2)² + (10−4)²) = √(100 + 36) = √136 ≈ 11,7 м.
Формулы Винсенти – когда нужна максимальная точность
Земля – не идеальная сфера, а сплюснутый эллипсоид. Радиус на полюсах (6 356,752 км) меньше, чем на экваторе (6 378,137 км). Формула гаверсинуса не учитывает это сжатие, поэтому погрешность достигает 0,3–0,5%.
Формулы Винсенти (1975) моделируют Землю как эллипсоид WGS-84 и дают точность порядка 0,5 мм. Они итеративные – вычисляются до сходимости результата. Применяются в геодезии, кадастровых работах и высокоточной навигации.
Для бытовых задач, логистики и маршрутизации гаверсинус обеспечивает достаточную точность. Формулы Винсенти оправданы в профессиональной геодезии и при расчётах на расстояния свыше 1 000 км, где погрешность гаверсинуса может превышать несколько километров.
Данные о расстояниях носят справочный характер. Для навигации и логистики сверяйтесь с актуальными картографическими сервисами.