Зоя Ковалёва
Профи
(908)
2 месяца назад
Я бы решила самым простым подходом! Нет, он не хуже сложных, он просто самый лаконичный и рациональный. Смотри:
Нам нужно только проецирующее положение, значит, достаточно изменить систему координат так, чтобы ось Z была параллельна прямой AB. Это проще всего сделать следующим образом:
Ось Z:
Вектор v = (-3, 5, -4), Тогда... Мы делим на свою длину v norm = v / ||v||, где ||v|| = √((-3)² + 5² + (-4)²) = √50
Ось X: Тут выбираем любой вектор, ортогональный к v_norm.
Ну, не знаю... Например, можно использовать перекрестное произведение v norm и (1,0,0) или (0,1,0) и выберешь из двух тебе подходящий.
Ось Y: Находишь потом векторное произведение v norm и новой оси X.
Полученные три вектора образуют новую ортонормированную систему координат. Матрица перехода от старой системы координат к новой будет иметь в качестве столбцов координаты этих трех векторов.
точки A (x=5 y=0 z=4), B (x=2 y=5 z=0) по координатам заняла проецирующее
положение в новой системе плоскостей проекций.