Найти в Дзене

Расстояние между двумя точками.

Всем привет, меня зовут Андрей, это снова я!

В прошлой статье я уже писал о том, как вычислить расстояние между Москвой и Петербургом, если известны только их географические координаты.

В данной статье я расскажу о том, как создать такой файл Excel, чтобы было удобно вычислять любые расстояния между двумя точками.

Итак, начнем. Создадим файл Excel, и сохраним его таким образом, чтобы это был файл с поддержкой макросов (на всякий случай, вдруг и правда понадобится помощь макросов).

Добавим в этот файл рисунок с трапецией. В этой трапеции боковые стороны находятся на меридианах, а основания – на параллелях.

Вот что должно получиться:

Рисунок 1.
Рисунок 1.

Комментарии к рисунку.

Нужно найти расстояние между точками B и D (то есть, одна из двух точек – в нашем случае, это точка B, будет относиться в северо-западном направлении по отношению ко второй точке, то есть к точке D), при этом известно следующее:

все точки находятся в северном полушарии;

точка B по отношению к точке D находится севернее и западнее (если северная точка будет находиться на более восточном меридиане, тогда нас будет интересовать вторая диагональ трапеции, или AC, но обе диагонали трапеции равны, поэтому большой разницы нет, какую именно диагональ трапеции будем находить; если две точки лежат на одной параллели, тогда нас будет интересовать только то основание трапеции, на котором лежат эти обе точки; если обе точки принадлежать одному меридиану, тогда нас будет интересовать только та боковая сторона, на которой лежат обе эти точки. На нашей трапеции равны не только диагонали, но и боковые стороны);

также известны географические координаты (широта и долгота) точек B и D (если северная точка лежит западнее южной), или это будут точки A и C, если северная точка будет лежать восточнее, чем южная.

Итак, продолжим создавать наш файл Excel, который поможет нам вычислить все нужные нам расстояния.

Вот примерно так может выглядеть этот файл.

Рисунок 2.
Рисунок 2.

Комментарии.

Если очевидно, что из двух точек северная точка будет одновременно и более западной, то мы будем производить расчет по «левым» таблицам, то есть A1-D5, A13-B23. Если же северная точка будет более восточной, то будем производить расчет по «правым» таблицам, то есть F1-I5, C13-D23. Основной рисунок будет тем же, поскольку диагонали равнобокой трапеции равны, равны и боковые стороны.

Таблица с A8 по E12 – для перевода (в случае необходимости) минут и секунд в градусы, потому что в строках со второй по пятую нужны числа в градусах. Например, если где-то будет 10 градусов и 30 минут, то это будет означать 30,5 градусов, потому что в каждом градусе 60 минут. Так же, как и в каждой минуте 60 секунд.

Вычислить длину по параллели или меридиану достаточно просто. Как я и говорил в предыдущей статье, один градус на любом меридиане это 111,1 километров, а каждый градус на параллели – это есть произведение числа 111,3 на косинус угла северной широты.

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

Итак, Москва – это точка D. 55,75 град. с.ш., 37,61 град. в.д.

Петербург – это точка B. 59,89 град. с.ш., 30,26 град. в.д.

Очевидно, что более северный Петербург находится западнее, поэтому расчет будем производить по «левой» схеме.

Вот что получится:

Рисунок 3.
Рисунок 3.

Здесь входные данные – это только широта и долгота двух точек, B3, C3, B5, D5. Результат – B23, или 632,85 км. Яндекс говорит, что это расстояние 634 км, разница между нашими расчетами и данными Яндекса минимальная.

Ну и второй пример – для «правых» таблиц. Найдем расстояние между Киевом (это точка A) и Екатеринбургом (это точка C).

Координаты: Киев – 50 град. 27 мин. с.ш., 30 град. 30 мин. в.д.

Екатеринбург: 56 град. 50 мин. с.ш., 60 град. 35 мин. в.д.

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

Вот результат расчета:

Рисунок 4.
Рисунок 4.

Наш результат – это ячейка D23, или около 2099 км.

Если спросить у Яндекса, сколько километров между Киевом и Екатеринбургом, то будет ответ: 2086. Разница между нашим расчетом и цифрой Яндекса – 13 км, или около 0,5%. Кстати, ширина Киева (восток-запад) 41 км, ширина Екатеринбурга (восток-запад) 57 км, то есть разница настолько мала, что оба значения расстояния можно считать правильными.

А на этом пока всё, подписывайтесь на мой канал и до новых встреч!