Как рассчитать расстояние между двумя точками. Расстояние между двумя точками плоскости.Системы координат

16.10.2019

Пусть задана прямоугольная система координат.

Теорема 1.1. Для любых двух точек М 1 (х 1 ;у 1) и М 2 (х 2 ;у 2) плоскости расстояние d между ними выражается формулой

Доказательство. Опустим из точек М 1 и М 2 перпендикуляры М 1 В и М 2 А соответственно

на оси Оу и Ох и обозначим через К точку пересечения прямых М 1 В и М 2 А (рис. 1.4). Возможны следующие случаи:

1)Точки М 1 , М 2 и К различны. Очевидно, что точка К имеет координаты (х 2 ;у 1). Нетрудно заметить что М 1 К = ôх 2 – х 1 ô, М 2 К = ôу 2 – у 1 ô. Т.к. ∆М 1 КМ 2 прямоугольный, то по теореме Пифагора d = М 1 М 2 = = .

2) Точка К совпадает с точкой М 2 , но отлична от точки М 1 (рис. 1.5). В этом случае у 2 = у 1

и d = М 1 М 2 = М 1 К = ôх 2 – х 1 ô= =

3) Точка К совпадает с точкой М 1 , но отлична от точки М 2 . В этом случае х 2 = х 1 и d =

М 1 М 2 = КМ 2 = ôу 2 - у 1 ô= = .

4) Точка М 2 совпадает с точкой М 1 . Тогда х 1 = х 2 , у 1 = у 2 и

d = М 1 М 2 = О = .

Деление отрезка в данном отношении.

Пусть на плоскости дан произвольный отрезок М 1 М 2 и пусть М ─ любая точка этого

отрезка, отличная от точки М 2 (рис. 1.6). Число l, определяемое равенством l = , называется отношением, в котором точка М делит отрезок М 1 М 2 .

Теорема 1.2. Если точка М(х;у) делит отрезок М 1 М 2 в отношении l, то координаты этой определяются формулами

х = , у = , (4)

где (х 1 ;у 1) ─ координаты точки М 1 , (х 2 ;у 2) ─ координаты точки М 2 .

Доказательство. Докажем первую из формул (4). Вторая формула доказывается аналогично. Возможны два случая.

х = х 1 = = = .

2) Прямая М 1 М 2 не перпендикулярна оси Ох (рис. 1.6). Опустим перпендикуляры из точек М 1 , М, М 2 на ось Ох и обозначим точки их пересечения с осью Ох соответственно Р 1 , Р, Р 2 . По теореме о пропорциональных отрезках = l.

Т.к. Р 1 Р = ôх – х 1 ô, РР 2 = ôх 2 – хô и числа (х – х 1) и (х 2 – х) имеют один и тот же знак (при х 1 < х 2 они положительны, а при х 1 > х 2 отрицательны), то

l = = ,

х – х 1 = l(х 2 – х), х + lх = х 1 + lх 2 ,

х = .

Следствие 1.2.1. Если М 1 (х 1 ;у 1) и М 2 (х 2 ;у 2) ─ две произвольные точки и точка М(х;у) ─ середина отрезка М 1 М 2 , то

х = , у = (5)

Доказательство. Так как М 1 М = М 2 М, то l = 1 и по формулам (4) получаем формулы (5).

Площадь треугольника.

Теорема 1.3. Для любых точек А(х 1 ;у 1), В(х 2 ;у 2) и С(х 3 ;у 3), не лежащих на одной

прямой, площадь S треугольника АВС выражается формулой

S = ô(х 2 – х 1)(у 3 – у 1) – (х 3 – х 1)(у 2 – у 1)ô (6)

Доказательство. Площадь ∆ АВС, изображённого на рис. 1.7, вычисляем следующим

S ABC = S ADEC + S BCEF – S ABFD .

Вычисляем площади трапеций:

S ADEC =
,

S BCEF =

S ABFD =

Теперь имеем

S ABC = ((х 3 – х 1)(у 3 + у 1) + (х 3 – х 2)(у 3 + у 2) - (х 2 – -х 1)(у 1 + у 2)) = (х 3 у 3 – х 1 у 3 + х 3 у 1 – х 1 у 1 + + х 2 у 3 – -х 3 у 3 + х 2 у 2 – х 3 у 2 – х 2 у 1 + х 1 у 1 – х 2 у 2 + х 1 у 2) = (х 3 у 1 – х 3 у 2 + х 1 у 2 – х 2 у 1 + х 2 у 3 –

Х 1 у 3) = (х 3 (у 1 – у 2) + х 1 у 2 – х 1 у 1 + х 1 у 1 – х 2 у 1 + у 3 (х 2 – х 1)) = (х 1 (у 2 – у 1) – х 3 (у 2 – у 1) + +у 1 (х 1 – х 2) – у 3 (х 1 – х 2)) = ((х 1 – х 3)(у 2 – у 1) + (х 1 – х 2)(у 1 – у 3)) = ((х 2 – х 1)(у 3 – у 1) –

- (х 3 – х 1)(у 2 – у 1)).

Для другого расположения ∆ АВС формула (6) доказывается аналогично, но может получиться со знаком «-». Поэтому в формуле (6) ставят знак модуля.


Лекция 2.

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

2.1. Пусть на плоскости задана прямоугольная система координат и некоторая линия L.

Определение 2.1. Уравнение вида F(x;y) = 0, связывающее переменные величины x и y, называется уравнение линии L (в заданной системе координат), если этому уравнению удовлетворяют координаты любой точки, лежащей на линии L, и не удовлетворяют координаты никакой точки, не лежащей на этой прямой.

Примеры уравнений линий на плоскости.

1) Рассмотрим прямую, параллельную оси Oy прямоугольной системы координат (рис. 2.1). Обозначим буквой A точку пересечения этой прямой с осью Ox, (a;o) ─ её ор-

динаты. Уравнение x = a является уравнением данной прямой. Действительно, этому уравнению удовлетворяют координаты любой точки M(a;y) этой прямой и не удовлетворяют координаты ни одной точки, не лежащей на прямой. Если a = 0, то прямая совпадает с осью Oy, которая имеет уравнение x = 0.

2) Уравнение x - y = 0 определяет множество точек плоскости, составляющих биссектрисы I и III координатных углов.

3) Уравнение x 2 - y 2 = 0 ─ это уравнение двух биссектрис координатных углов.

4) Уравнение x 2 + y 2 = 0 определяет на плоскости единственную точку O(0;0).

5) Уравнение x 2 + y 2 = 25 ─ уравнение окружности радиуса 5 с центром в начале координат.

Расчет расстояний между точками по их координатам на плоскости элементарен, на поверхности Земли — немного посложнее: мы рассмотрим измерение расстояния и начального азимута между точками без проекционных преобразований. Для начала разберемся в терминологии.

Введение

Длина дуги большого круга – кратчайшее расстояние между любыми двумя точками находящимися на поверхности сферы, измеренное вдоль линии соединяющей эти две точки (такая линия носит название ортодромии) и проходящей по поверхности сферы или другой поверхности вращения. Сферическая геометрия отличается от обычной Эвклидовой и уравнения расстояния также принимают другую форму. В Эвклидовой геометрии, кратчайшее расстояние между двумя точками – прямая линия. На сфере, прямых линий не бывает. Эти линии на сфере являются частью больших кругов – окружностей, центры которых совпадают с центром сферы. Начальный азимут — азимут, взяв который при начале движения из точки А, следуя по большому кругу на кратчайшее расстояние до точки B, конечной точкой будет точка B. При движении из точки A в точку B по линии большого круга азимут из текущего положения на конечную точку B постоянно меняется. Начальный азимут отличен от постоянного, следуя которому, азимут из текущей точки на конечную не меняется, но маршрут следования не является кратчайшим расстоянием между двумя точками.

Через любые две точки на поверхности сферы, если они не прямо противоположны друг другу (то есть не являются антиподами), можно провести уникальный большой круг. Две точки, разделяют большой круг на две дуги. Длина короткой дуги – кратчайшее расстояние между двумя точками. Между двумя точками-антиподами можно провести бесконечное количество больших кругов, но расстояние между ними будет одинаково на любом круге и равно половине окружности круга, или π*R, где R – радиус сферы.

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

Форма Земли может быть описана как сфера, поэтому уравнения для вычисления расстояний на большом круге важны для вычисления кратчайшего расстояния между точками на поверхности Земли и часто используются в навигации. Вычисление расстояния этим методом более эффективно и во многих случаях более точно, чем вычисление его для спроектированных координат (в прямоугольных системах координат), поскольку, во-первых, для этого не надо переводить географические координаты в прямоугольную систему координат (осуществлять проекционные преобразования) и, во-вторых, многие проекции, если неправильно выбраны, могу привести к значительным искажениям длин в силу особенностей проекционных искажений. Известно, что более точно описывает форму Земли не сфера, а эллипсоид, однако в данной статье рассматривается вычисление расстояний именно на сфере, для вычислений используется сфера радиусом 6372795 метров, что может привести к ошибке вычисления расстояний порядка 0.5%.

Формулы

Существует три способа расчета сферического расстояния большого круга. 1. Сферическая теорема косинусов В случае маленьких расстояний и небольшой разрядности вычисления (количество знаков после запятой), использование формулы может приводить к значительным ошибкам связанным с округлением. φ1, λ1; φ2, λ2 — широта и долгота двух точек в радианах Δλ — разница координат по долготе Δδ — угловая разница Δδ = arccos {sin φ1 sin φ2 + cos φ1 cos φ2 cos Δλ} Для перевода углового расстояния в метрическое, нужно угловую разницу умножить на радиус Земли (6372795 метров), единицы конечного расстояния будут равны единицам, в которых выражен радиус (в данном случае — метры). 2. Формула гаверсинусов Используется, чтобы избежать проблем с небольшими расстояниями. 3. Модификация для антиподов Предыдущая формула также подвержена проблеме точек-антиподов, чтобы ее решить используется следующая ее модификация.

Моя реализация на РНР

// Радиус земли define("EARTH_RADIUS", 6372795); /* * Расстояние между двумя точками * $φA, $λA - широта, долгота 1-й точки, * $φB, $λB - широта, долгота 2-й точки * Написано по мотивам http://gis-lab.info/qa/great-circles.html * Михаил Кобзарев * */ function calculateTheDistance ($φA, $λA, $φB, $λB) { // перевести координаты в радианы $lat1 = $φA * M_PI / 180; $lat2 = $φB * M_PI / 180; $long1 = $λA * M_PI / 180; $long2 = $λB * M_PI / 180; // косинусы и синусы широт и разницы долгот $cl1 = cos($lat1); $cl2 = cos($lat2); $sl1 = sin($lat1); $sl2 = sin($lat2); $delta = $long2 - $long1; $cdelta = cos($delta); $sdelta = sin($delta); // вычисления длины большого круга $y = sqrt(pow($cl2 * $sdelta, 2) + pow($cl1 * $sl2 - $sl1 * $cl2 * $cdelta, 2)); $x = $sl1 * $sl2 + $cl1 * $cl2 * $cdelta; // $ad = atan2($y, $x); $dist = $ad * EARTH_RADIUS; return $dist; } Пример вызова функции: $lat1 = 77.1539; $long1 = -139.398; $lat2 = -77.1804; $long2 = -139.55; echo calculateTheDistance($lat1, $long1, $lat2, $long2) . " метров"; // Вернет "17166029 метров"

Здравствуйте,

Используется PHP:

С уважением, Александр.

Здравствуйте,

Уже достаточное время мучаюсь с проблемой: пытаюсь рассчитать расстояние между двумя произвольными точками, которые находятся на удалении от 30 до 1500 метров друг от друга.

Используется PHP:

$cx=31.319738; //координата x первой точки
$cy=60.901638; //координата y первой точки

$x=31.333312; //координата x второй точки
$y=60.933981; //координата y второй точки

$mx=abs($cx-$x); //высчитываем разницу иксов (первый катет прямоугольного треугольника), функция abs(x) - возвращает модуль числаx x
$my=abs($cy-$y); //высчитываем разницу игреков (второй катет прямоугольного треугольника)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Получаем расстояние до метро (длину гипотенузы по правилу гипотенуза равна корню из суммы квадратов катетов)

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

Я знаю, что это правило хорошо работает для декартовой системы координат, однако, оно должно более-менее работать и через координаты longlat, т.к. измеряемое расстояние между двумя точками пренебрежимо мало (от 30 до 1500 метров).

Однако, расстояние по данному алгоритму вычисляется неверно (например, расстояние1, расчитанное по этому алгоритму, превышает расстояние2 всего на 13%, тогда как в реальности расстояние1 равно 1450 метров, я расстояние2 равно 970 метров, то есть на самом делие разница достигает почти 50%).

Если кто-то сможет помочь, буду очень признателен.

С уважением, Александр.

","contentType":"text/html"},"proposedBody":{"source":"

Здравствуйте,

Уже достаточное время мучаюсь с проблемой: пытаюсь рассчитать расстояние между двумя произвольными точками, которые находятся на удалении от 30 до 1500 метров друг от друга.

Используется PHP:

$cx=31.319738; //координата x первой точки
$cy=60.901638; //координата y первой точки

$x=31.333312; //координата x второй точки
$y=60.933981; //координата y второй точки

$mx=abs($cx-$x); //высчитываем разницу иксов (первый катет прямоугольного треугольника), функция abs(x) - возвращает модуль числаx x
$my=abs($cy-$y); //высчитываем разницу игреков (второй катет прямоугольного треугольника)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Получаем расстояние до метро (длину гипотенузы по правилу гипотенуза равна корню из суммы квадратов катетов)

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

Я знаю, что это правило хорошо работает для декартовой системы координат, однако, оно должно более-менее работать и через координаты longlat, т.к. измеряемое расстояние между двумя точками пренебрежимо мало (от 30 до 1500 метров).

Однако, расстояние по данному алгоритму вычисляется неверно (например, расстояние1, расчитанное по этому алгоритму, превышает расстояние2 всего на 13%, тогда как в реальности расстояние1 равно 1450 метров, я расстояние2 равно 970 метров, то есть на самом делие разница достигает почти 50%).

Если кто-то сможет помочь, буду очень признателен.

С уважением, Александр.

Здравствуйте,

Уже достаточное время мучаюсь с проблемой: пытаюсь рассчитать расстояние между двумя произвольными точками, которые находятся на удалении от 30 до 1500 метров друг от друга.

Используется PHP:

$cx=31.319738; //координата x первой точки
$cy=60.901638; //координата y первой точки

$x=31.333312; //координата x второй точки
$y=60.933981; //координата y второй точки

$mx=abs($cx-$x); //высчитываем разницу иксов (первый катет прямоугольного треугольника), функция abs(x) - возвращает модуль числаx x
$my=abs($cy-$y); //высчитываем разницу игреков (второй катет прямоугольного треугольника)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Получаем расстояние до метро (длину гипотенузы по правилу гипотенуза равна корню из суммы квадратов катетов)

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

Я знаю, что это правило хорошо работает для декартовой системы координат, однако, оно должно более-менее работать и через координаты longlat, т.к. измеряемое расстояние между двумя точками пренебрежимо мало (от 30 до 1500 метров).

Однако, расстояние по данному алгоритму вычисляется неверно (например, расстояние1, расчитанное по этому алгоритму, превышает расстояние2 всего на 13%, тогда как в реальности расстояние1 равно 1450 метров, я расстояние2 равно 970 метров, то есть на самом делие разница достигает почти 50%).

Если кто-то сможет помочь, буду очень признателен.

С уважением, Александр.

","contentType":"text/html"},"authorId":"108613929","slug":"15001","canEdit":false,"canComment":false,"isBanned":false,"canPublish":false,"viewType":"old","isDraft":false,"isOnModeration":false,"isSubscriber":false,"commentsCount":14,"modificationDate":"Wed Jun 27 2012 20:07:00 GMT+0000 (UTC)","showPreview":true,"approvedPreview":{"source":"

Здравствуйте,

Уже достаточное время мучаюсь с проблемой: пытаюсь рассчитать расстояние между двумя произвольными точками, которые находятся на удалении от 30 до 1500 метров друг от друга.

Используется PHP:

$cx=31.319738; //координата x первой точки
$cy=60.901638; //координата y первой точки

$x=31.333312; //координата x второй точки
$y=60.933981; //координата y второй точки

$mx=abs($cx-$x); //высчитываем разницу иксов (первый катет прямоугольного треугольника), функция abs(x) - возвращает модуль числаx x
$my=abs($cy-$y); //высчитываем разницу игреков (второй катет прямоугольного треугольника)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Получаем расстояние до метро (длину гипотенузы по правилу гипотенуза равна корню из суммы квадратов катетов)

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

Я знаю, что это правило хорошо работает для декартовой системы координат, однако, оно должно более-менее работать и через координаты longlat, т.к. измеряемое расстояние между двумя точками пренебрежимо мало (от 30 до 1500 метров).

Однако, расстояние по данному алгоритму вычисляется неверно (например, расстояние1, расчитанное по этому алгоритму, превышает расстояние2 всего на 13%, тогда как в реальности расстояние1 равно 1450 метров, я расстояние2 равно 970 метров, то есть на самом делие разница достигает почти 50%).

Если кто-то сможет помочь, буду очень признателен.

С уважением, Александр.

","html":"Здравствуйте,","contentType":"text/html"},"proposedPreview":{"source":"

Здравствуйте,

Уже достаточное время мучаюсь с проблемой: пытаюсь рассчитать расстояние между двумя произвольными точками, которые находятся на удалении от 30 до 1500 метров друг от друга.

Используется PHP:

$cx=31.319738; //координата x первой точки
$cy=60.901638; //координата y первой точки

$x=31.333312; //координата x второй точки
$y=60.933981; //координата y второй точки

$mx=abs($cx-$x); //высчитываем разницу иксов (первый катет прямоугольного треугольника), функция abs(x) - возвращает модуль числаx x
$my=abs($cy-$y); //высчитываем разницу игреков (второй катет прямоугольного треугольника)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Получаем расстояние до метро (длину гипотенузы по правилу гипотенуза равна корню из суммы квадратов катетов)

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

Я знаю, что это правило хорошо работает для декартовой системы координат, однако, оно должно более-менее работать и через координаты longlat, т.к. измеряемое расстояние между двумя точками пренебрежимо мало (от 30 до 1500 метров).

Однако, расстояние по данному алгоритму вычисляется неверно (например, расстояние1, расчитанное по этому алгоритму, превышает расстояние2 всего на 13%, тогда как в реальности расстояние1 равно 1450 метров, я расстояние2 равно 970 метров, то есть на самом делие разница достигает почти 50%).

Если кто-то сможет помочь, буду очень признателен.

С уважением, Александр.

","html":"Здравствуйте,","contentType":"text/html"},"titleImage":null,"tags":[{"displayName":"измерение расстояний","slug":"izmerenie-rasstoyaniy","categoryId":"10615601","url":"/blog/mapsapi??tag=izmerenie-rasstoyaniy"},{"displayName":"API 1.x","slug":"api-1-x","categoryId":"150000131","url":"/blog/mapsapi??tag=api-1-x"}],"isModerator":false,"commentsEnabled":true,"url":"/blog/mapsapi/15001","urlTemplate":"/blog/mapsapi/%slug%","fullBlogUrl":"https://yandex.ru/blog/mapsapi","addCommentUrl":"/blog/createComment/mapsapi/15001","updateCommentUrl":"/blog/updateComment/mapsapi/15001","addCommentWithCaptcha":"/blog/createWithCaptcha/mapsapi/15001","changeCaptchaUrl":"/blog/api/captcha/new","putImageUrl":"/blog/image/put","urlBlog":"/blog/mapsapi","urlEditPost":"/blog/56a98d48b15b79e31e0d54c8/edit","urlSlug":"/blog/post/generateSlug","urlPublishPost":"/blog/56a98d48b15b79e31e0d54c8/publish","urlUnpublishPost":"/blog/56a98d48b15b79e31e0d54c8/unpublish","urlRemovePost":"/blog/56a98d48b15b79e31e0d54c8/removePost","urlDraft":"/blog/mapsapi/15001/draft","urlDraftTemplate":"/blog/mapsapi/%slug%/draft","urlRemoveDraft":"/blog/56a98d48b15b79e31e0d54c8/removeDraft","urlTagSuggest":"/blog/api/suggest/mapsapi","urlAfterDelete":"/blog/mapsapi","isAuthor":false,"subscribeUrl":"/blog/api/subscribe/56a98d48b15b79e31e0d54c8","unsubscribeUrl":"/blog/api/unsubscribe/56a98d48b15b79e31e0d54c8","urlEditPostPage":"/blog/mapsapi/56a98d48b15b79e31e0d54c8/edit","urlForTranslate":"/blog/post/translate","urlRelateIssue":"/blog/post/updateIssue","urlUpdateTranslate":"/blog/post/updateTranslate","urlLoadTranslate":"/blog/post/loadTranslate","urlTranslationStatus":"/blog/mapsapi/15001/translationInfo","urlRelatedArticles":"/blog/api/relatedArticles/mapsapi/15001","author":{"id":"108613929","uid":{"value":"108613929","lite":false,"hosted":false},"aliases":{},"login":"mrdds","display_name":{"name":"mrdds","avatar":{"default":"0/0-0","empty":true}},"address":"[email protected]","defaultAvatar":"0/0-0","imageSrc":"https://avatars.mds.yandex.net/get-yapic/0/0-0/islands-middle","isYandexStaff":false},"originalModificationDate":"2012-06-27T16:07:49.000Z","socialImage":{"orig":{"fullPath":"https://avatars.mds.yandex.net/get-yablogs/47421/file_1456488726678/orig"}}}}}">

Определение расстояние между двумя точками ТОЛЬКО по координатам longlat.

$my=abs($cy-$y); //высчитываем разницу игреков (второй катет прямоугольного треугольника)

$dist=sqrt(pow($mx,2)+pow($my,2)); //Получаем расстояние до метро (длину гипотенузы по правилу гипотенуза равна корню из суммы квадратов катетов)

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

Я знаю, что это правило хорошо работает для декартовой системы координат, однако, оно должно более-менее работать и через координаты longlat, т.к. измеряемое расстояние между двумя точками пренебрежимо мало (от 30 до 1500 метров).

Однако, расстояние по данному алгоритму вычисляется неверно (например, расстояние1, расчитанное по этому алгоритму, превышает расстояние2 всего на 13%, тогда как в реальности расстояние1 равно 1450 метров, я расстояние2 равно 970 метров, то есть на самом делие разница достигает почти 50%).

Если кто-то сможет помочь, буду очень признателен.

С уважением, Александр.

Решение задач по математике у учащихся часто сопровождается многими трудностями. Помочь учащемуся справиться с этими трудности, а так же научить применять имеющиеся у него теоретические знания при решении конкретных задач по всем разделам курса предмета «Математика» – основное назначение нашего сайта.

Приступая к решению задач по теме , учащиеся должны уметь строить точку на плоскости по ее координатам, а так же находить координаты заданной точки.

Вычисление расстояния между взятыми на плоскости двумя точками А(х А; у А) и В(х В; у В), выполняется по формуле d = √((х А – х В) 2 + (у А – у В) 2) , где d – длина отрезка, который соединяет эти точки на плоскости.

Если один из концов отрезка совпадает с началом координат, а другой имеет координаты М(х М; у М), то формула для вычисления d примет вид ОМ = √(х М 2 + у М 2).

1. Вычисление расстояния между двумя точками по данным координатам этих точек

Пример 1 .

Найти длину отрезка, который соединяет на координатной плоскости точки А(2; -5) и В(-4; 3) (рис. 1).

Решение.

В условии задачи дано: х А = 2; х В = -4; у А = -5 и у В = 3. Найти d.

Применив формулу d = √((х А – х В) 2 + (у А – у В) 2), получим:

d = АВ = √((2 – (-4)) 2 + (-5 – 3) 2) = 10.

2. Вычисление координат точки, которая равноудалена от трех заданных точек

Пример 2.

Найти координаты точки О 1 , которая равноудалена от трех точек А(7; -1) и В(-2; 2) и С(-1; -5).

Решение.

Из формулировки условия задачи следует, что О 1 А = О 1 В = О 1 С. Пусть искомая точка О 1 имеет координаты (а; b). По формуле d = √((х А – х В) 2 + (у А – у В) 2) найдем:

О 1 А = √((а – 7) 2 + (b + 1) 2);

О 1 В = √((а + 2) 2 + (b – 2) 2);

О 1 С = √((а + 1) 2 + (b + 5) 2).

Составим систему из двух уравнений:

{√((а – 7) 2 + (b + 1) 2) = √((а + 2) 2 + (b – 2) 2),
{√((а – 7) 2 + (b + 1) 2) = √((а + 1) 2 + (b + 5) 2).

После возведения в квадрат левой и правой частей уравнений запишем:

{(а – 7) 2 + (b + 1) 2 = (а + 2) 2 + (b – 2) 2 ,
{(а – 7) 2 + (b + 1) 2 = (а + 1) 2 + (b + 5) 2 .

Упростив, запишем

{-3а + b + 7 = 0,
{-2а – b + 3 = 0.

Решив систему, получим: а = 2; b = -1.

Точка О 1 (2; -1) равноудалена от трех заданных в условии точек, которые не лежат на одной прямой. Эта точка – есть центр окружности, проходящей через три заданные точки (рис. 2) .

3. Вычисление абсциссы (ординаты) точки, которая лежит на оси абсцисс (ординат) и находится на заданном расстоянии от данной точки

Пример 3.

Расстояние от точки В(-5; 6) до точки А, лежащей на оси Ох равно 10. Найти точку А.

Решение.

Из формулировки условия задачи следует, что ордината точки А равна нулю и АВ = 10.

Обозначив абсциссу точки А через а, запишем А(а; 0).

АВ = √((а + 5) 2 + (0 – 6) 2) = √((а + 5) 2 + 36).

Получаем уравнение √((а + 5) 2 + 36) = 10. Упростив его, имеем

а 2 + 10а – 39 = 0.

Корни этого уравнения а 1 = -13; а 2 = 3.

Получаем две точки А 1 (-13; 0) и А 2 (3; 0).

Проверка:

А 1 В = √((-13 + 5) 2 + (0 – 6) 2) = 10.

А 2 В = √((3 + 5) 2 + (0 – 6) 2) = 10.

Обе полученные точки подходят по условию задачи (рис. 3).

4. Вычисление абсциссы (ординаты) точки, которая лежит на оси абсцисс (ординат) и находится на одинаковом расстоянии от двух заданных точек

Пример 4.

Найти на оси Оу точку, которая находится на одинаковом расстоянии от точек А(6; 12) и В(-8; 10).

Решение.

Пусть координаты нужной по условию задачи точки, лежащей на оси Оу, будут О 1 (0; b) (у точки, лежащей на оси Оу, абсцисса равна нулю). Из условия следует, что О 1 А = О 1 В.

По формуле d = √((х А – х В) 2 + (у А – у В) 2) находим:

О 1 А = √((0 – 6) 2 + (b – 12) 2) = √(36 + (b – 12) 2);

О 1 В = √((а + 8) 2 + (b – 10) 2) = √(64 + (b – 10) 2).

Имеем уравнение √(36 + (b – 12) 2) = √(64 + (b – 10) 2) или 36 + (b – 12) 2 = 64 + (b – 10) 2 .

После упрощения получим: b – 4 = 0, b = 4.

Необходимая по условию задачи точка О 1 (0; 4) (рис. 4).

5. Вычисление координат точки, которая находится на одинаковом расстоянии от осей координат и некоторой заданной точки

Пример 5.

Найти точку М, расположенную на координатной плоскости на одинаковом расстоянии от осей координат и от точки А(-2; 1).

Решение.

Необходимая точка М, как и точка А(-2; 1), располагается во втором координатном углу, так как она равноудалена от точек А, Р 1 и Р 2 (рис. 5) . Расстояния точки М от осей координат одинаковые, следовательно, ее координатами будут (-a; a), где а > 0.

Из условия задачи следует, что МА = МР 1 = МР 2 , МР 1 = а; МР 2 = |-a|,

т.е. |-a| = а.

По формуле d = √((х А – х В) 2 + (у А – у В) 2) находим:

МА = √((-а + 2) 2 + (а – 1) 2).

Составим уравнение:

√((-а + 2) 2 + (а – 1) 2) = а.

После возведения в квадрат и упрощения имеем: а 2 – 6а + 5 = 0. Решим уравнение, найдем а 1 = 1; а 2 = 5.

Получаем две точки М 1 (-1; 1) и М 2 (-5; 5), удовлетворяющие условию задачи.

6. Вычисление координат точки, которая находится на одинаковом заданном расстоянии от оси абсцисс (ординат) и от данной точки

Пример 6.

Найти точку М такую, что расстояние ее от оси ординат и от точки А(8; 6) будет равно 5.

Решение.

Из условия задачи следует, что МА = 5 и абсцисса точки М равна 5. Пусть ордината точки М равна b, тогда М(5; b) (рис. 6).

По формуле d = √((х А – х В) 2 + (у А – у В) 2) имеем:

МА = √((5 – 8) 2 + (b – 6) 2).

Составим уравнение:

√((5 – 8) 2 + (b – 6) 2) = 5. Упростив его, получим: b 2 – 12b + 20 = 0. Корни этого уравнения b 1 = 2; b 2 = 10. Следовательно, есть две точки, удовлетворяющие условию задачи: М 1 (5; 2) и М 2 (5; 10).

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

Остались вопросы? Не знаете, как найти расстояние между двумя точками на плоскости?
Чтобы получить помощь репетитора – .
Первый урок – бесплатно!

blog.сайт, при полном или частичном копировании материала ссылка на первоисточник обязательна.


Расстояние от точки до точки - это длина отрезка, соединяющего эти точки, в заданном масштабе. Таким образом, когда речь идет об измерении расстояния, то требуется знать масштаб (единицу длины), в котором будут проводиться измерения. Поэтому, задачу нахождения расстояния от точки до точки обычно рассматривают либо на координатной прямой, либо в прямоугольной декартовой системе координат на плоскости или в трехмерном пространстве. Другими словами, наиболее часто приходится вычислять расстояние между точками по их координатам.

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

Навигация по странице.

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

Давайте для начала определимся с обозначениями. Расстояние от точки А до точки В будем обозначать как .

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

Расстояние от точки до точки на плоскости, формула.

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

В зависимости от расположения точек А и В возможны следующие варианты.

Если точки А и В совпадают, то расстояние между ними равно нулю.

Если точки А и В лежат на прямой, перпендикулярной оси абсцисс, то точки и совпадают, а расстояние равно расстоянию . В предыдущем пункте мы выяснили, что расстояние между двумя точками на координатной прямой равно модулю разности их координат, поэтому, . Следовательно, .

Аналогично, если точки А и В лежат на прямой, перпендикулярной оси ординат, то расстояние от точки А до точки В находится как .

В этом случае треугольник АВС – прямоугольный по построению, причем и . По теореме Пифагора мы можем записать равенство , откуда .

Обобщим все полученные результаты: расстояние от точки до точки на плоскости находится через координаты точек по формуле .

Полученную формулу для нахождения расстояния между точками, можно использовать когда точки А и В совпадают или лежат на прямой, перпендикулярной одной из координатных осей. Действительно, если А и В совпадают, то . Если точки А и В лежат на прямой, перпендикулярной оси Ох , то . Если А и В лежат на прямой, перпендикулярной оси Оу , то .

Расстояние между точками в пространстве, формула.

Введем прямоугольную систему координат Оxyz в пространстве. Получим формулу для нахождения расстояния от точки до точки .

В общем случае, точки А и В не лежат в плоскости, параллельной одной из координатных плоскостей. Проведем через точки А и В плоскости, перпендикулярные координатным осям Ох , Оу и Oz . Точки пересечения этих плоскостей с координатными осями дадут нам проекции точек А и В на эти оси. Обозначим проекции .


Искомое расстояние между точками А и В представляет собой диагональ прямоугольного параллелепипеда, изображенного на рисунке. По построению, измерения этого параллелепипеда равны и . В курсе геометрии средней школы было доказано, что квадрат диагонали прямоугольного параллелепипеда равен сумме квадратов трех его измерений, поэтому, . Опираясь на информацию первого раздела этой статьи, мы можем записать следующие равенства , следовательно,

откуда получаем формулу для нахождения расстояния между точками в пространстве .

Эта формула также справедлива, если точки А и В

  • совпадают;
  • принадлежат одной из координатных осей или прямой, параллельной одной из координатных осей;
  • принадлежат одной из координатных плоскостей или плоскости, параллельной одной из координатных плоскостей.

Нахождение расстояния от точки до точки, примеры и решения.

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

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



© dagexpo.ru, 2024
Стоматологический сайт