Перенос на вектор (l, m, n)

Отражения

Растяжение (сжатие)вдоль координатных осей

Повороты в трехмерном пространстве.

а) вокруг оси x на угол j

б) вокруг оси y на угол y

в) вокруг оси z на угол c

а) относительно плоскости XY

б) относительно плоскости YZ

в) относительно плоскости ZX

Пример. Рассмотрим сложное преобразование, заключающееся во вращении на угол j вокруг прямой, проходящей через точку A(x, y, z) и имеющую направляющий вектор v(l,m,n). Для простоты будем считать, что направляющий вектор является единичным, т.е. |V|=1.

Мы должны разложить наше преобразование на ряд элементарных (рассмотренных ранее) шагов. Для поворота вокруг прямой, совместим ось z с этой прямой.

1. Совмести точку A с началом координат:

2. Поворот оси z на угол y (вокруг оси x). Т.к. систему координат нужно повернуть по часовой стрелке на угол y, то формула получается как для поворота точки против часовой стрелки на угол y.

3. Поворот вокруг оси y на угол q. Т.к. систему нужно повернуть против часовой стрелки на угол q, то формула изменится (как для поворота точки против часовой стрелки на угол -q).

4. Вращение вокруг v на угол j, т.к. v совпадает с осью z, то матрица этого преобразования имеет вид:

Т.к. необходимо вернуться в исходную систему координат, то

5. Поворот вокруг оси y на угол -q – [Ry].

6. Поворот вокруг оси x на угол -j – [Rx].

7. Перенос на вектор A(x, y, z) – [T].

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

[A]=[T]-1[Rx]-1[Ry]-1[Rz] [Ry] [Rx] [T].



Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: