LifeTally
Ближайшая точка отрезка и расстояние до него
Где находится ближайшая точка вашего конечного отрезка и как далеко от неё заданная точка?
Введите концы отрезка A и B и точку P. Найдите ближайшую точку Q, её положение от A к B и расстояние по прямой P–Q.
Ваш отрезок и точка
Используйте общие взаимно перпендикулярные декартовы оси, одинаковый масштаб и одну единицу координат для A, B и P. Вводите десятичные дроби, а не a/b. Концы сохраняют порядок ввода. Допустимы вертикальные, горизонтальные и вырожденные отрезки.
Как получена оценка
Пусть d = B − A, u = P − A. Для разных концов w = d·d > 0, t = min(1, max(0, (u·d)/w)). Ближайшая точка Q = A + t d, расстояние равно √((Px − Qx)² + (Py − Qy)²). Положение 0 соответствует A, 1 — B; внутреннее t строго между ними. Квадрат расстояния до A + t d — квадратичная функция с минимумом без ограничений при (u·d)/w, поэтому ограничение t отрезком [0,1] даёт ближайшую точку конечного отрезка. Если A = B, отрезок состоит из одной точки: Q = A, а t = 0 выбрано по соглашению. Для расстояния всегда нужны все шесть координат. Для невырожденного отрезка они нужны также для t, Q и положения. При известных совпавших концах t = 0, Q и статус вырожденного отрезка остаются известны даже при неверной P; её ошибки видны, а расстояние неизвестно. Частные точные десятичные дроби принятых числовых значений используются до итогового округления; округлённые t и Q не используются повторно.
d = B − A; u = P − A; w = d · d
w > 0: t = min(1, max(0, (u · d) ÷ w))
Q = A + t d; |P − Q| = √((Px − Qx)² + (Py − Qy)²)
A = B: Q = A; t = 0Только одна заданная точка и один замкнутый конечный прямолинейный отрезок на двумерной евклидовой плоскости. Оба конца принадлежат отрезку. Совпавшие концы и точка на отрезке допустимы; расстояние от точки на нём равно нулю. Это не расстояние до бесконечной прямой, луча, ломаной, кривой, трёхмерного объекта, географической точки или по дороге. Нет графика, перевода единиц, проверки измерений, оценки погрешности или гарантии размещения и безопасности. Точные сравнения используют принятые числовые значения без допуска около нуля; они не доказывают свойства измеренных объектов.
CGAL: замкнутый отрезок на плоскости и совпавшие концы ↗OpenStax: скалярное произведение и проекция вектора ↗
Проверьте заполненный пример
Наш выбранный пример: A = (−2, 1), B = (4, 1), P = (1, 5). Здесь d = (6, 0), u = (3, 4), u·d = 18, d·d = 36. Поэтому t = 0,5, Q = (1, 1) находится внутри отрезка, расстояние P–Q = 4 единицы координат. Это математические координаты примера, а не измеренные или рекомендуемые размеры.
Принятые исходные значения
- Конец A: координата x
- -2
- Конец A: координата y
- 1
- Конец B: координата x
- 4
- Конец B: координата y
- 1
- Точка P: координата x
- 1
- Точка P: координата y
- 5
Следующее действие
Для отдельных арифметических действий откройте обычный калькулятор. Перед толкованием геометрии проверьте порядок концов, выбранные оси и одинаковые единицы.
Открыть обычный калькулятор →