Как найти длину перпендикуляра с точки на отрезок? Есть точка A(x,y). Есть отрезок с началом B(x1,y1) и концом C(x2,y2). Требуется найти перпендикуляр, опущенный с точки на отрезок. Я попробовал сделать по формуле высоты треугольника - www.fxyz.ru/%D1%84%D0%BE%D1%80%D0%BC%D1%83%D0%BB%D... Но дело в том, что если точка лежит не над отрезком (то есть под точкой пустота), то результат будет таким, словно отрезок все равно под точкой. Иначе говоря, будто отрезок бесконечный.
Для того чтобы найти длину перпендикуляра, опущенного из точки A на отрезок BC, нужно выполнить следующие шаги:
Найдите уравнение прямой, проходящей через точки B и C. Уравнение прямой можно найти, используя формулу: y - y1 = (y2 - y1)/(x2 - x1)*(x - x1), где (x1, y1) и (x2, y2) - координаты точек B и C соответственно.
Найдите уравнение прямой, перпендикулярной найденной в предыдущем пункте и проходящей через точку A. Уравнение перпендикуляра можно найти заменой коэффициента наклона и инвертированием его знака: y - y = -(x2 - x1)/(y2 - y1)*(x - x), где (x, y) - координаты точки A.
Найдите точку пересечения прямых, найденных в пунктах 1 и 2. Это будет точка D(xd, yd).
Найдите длину отрезка AD, который и будет являться искомой длиной перпендикуляра. Для этого воспользуйтесь формулой расстояния между двумя точками: d = sqrt((xd - x)^2 + (yd - y)^2), где (xd, yd) и (x, y) - координаты точек D и A соответственно.
Этими шагами можно найти длину перпендикуляра, опущенного из точки A на отрезок BC.
Для того чтобы найти длину перпендикуляра, опущенного из точки A на отрезок BC, нужно выполнить следующие шаги:
Найдите уравнение прямой, проходящей через точки B и C. Уравнение прямой можно найти, используя формулу:
y - y1 = (y2 - y1)/(x2 - x1)*(x - x1), где (x1, y1) и (x2, y2) - координаты точек B и C соответственно.
Найдите уравнение прямой, перпендикулярной найденной в предыдущем пункте и проходящей через точку A. Уравнение перпендикуляра можно найти заменой коэффициента наклона и инвертированием его знака:
y - y = -(x2 - x1)/(y2 - y1)*(x - x), где (x, y) - координаты точки A.
Найдите точку пересечения прямых, найденных в пунктах 1 и 2. Это будет точка D(xd, yd).
Найдите длину отрезка AD, который и будет являться искомой длиной перпендикуляра. Для этого воспользуйтесь формулой расстояния между двумя точками:
d = sqrt((xd - x)^2 + (yd - y)^2), где (xd, yd) и (x, y) - координаты точек D и A соответственно.
Этими шагами можно найти длину перпендикуляра, опущенного из точки A на отрезок BC.