Поиск координат точки пересечения отрезка с плоскостью
Как найти точку пересечения отрезка (заданного точками Axyz и Bxyz) плоскостью(заданную точкой лежащей на плоскости и нормалью)?
Ответы (2 шт):
Michael, ну вы что-то сегодня какие-то сходные вопросы задаете, которые присутствуют в учебниках геометрии (ну или аналитической геометрии)
алгоритм
- получить уравнение прямой по 2 точкам
https://mnogoformul.ru/uravnenie-pryamoj-po-dvum-tochkam
- проверить, является ли прямая параллельной плоскости или лежит на плоскости
- найти точку пересечения прямой с плоскостью
http://www.cleverstudents.ru/line_and_plane/intersection_point_of_line_and_plane.html
https://matworld.ru/analytic-geometry/tochka-peresechenija-prjamoj-i-ploskosti.php
http://mathprofi.ru/zadachi_s_pryamoi_i_ploskostju.html
и т.д.
- определить, находится ли точка внутри отрезка (лежит ли внутри координат p1..p2)
вот такая система должна выполняться:
min(x1, x2) <= x0 <= max(x1, x2)
min(y1, y2) <= y0 <= max(y1, y2)
min(z1, z2) <= z0 <= max(z1, z2)
AB = B - A
d = Base.dot.N
t = (d - A.dot.N) / (AB.dot.N)
Если AB.dot.N==0, то отрезок параллелен плоскости.
Если t в пределах 0...1, то пересечение есть, координаты его A + t * AB