Методическое пособие по курсу "Интерактивные графические системы". Найханов В.В - 19 стр.

UptoLike

[ x` y` z` 1 ] = [ x y z 1 ]
1000
0cos0sin
0010
0sin0cos
ϕϕ
ϕϕ
.
Вращение вокруг координатной оси Z, проходящей через начало
координат, выражается матрицей:
[ x` y` z` 1 ] = [ x y z 1 ]
1000
0100
00cossin
00sincos
ϕϕ
ϕϕ
.
Вращение вокруг произвольной оси описывается комбинацией
простейших преобразований и выполняется в пять этапов:
1)
перенос объекта в новую координатную систему с началом
координат в любой точке (x,y,z) на прямой оси вращения (матрица Т);
2)
совмещение единичного вектора оси X (0,0,1) с вектором
направляющих косинусов (a,b,c) оси вращения путем поворота
координатной системы вокруг осей X и Y (матрицы R и Q);
3)
поворот новой координатной системы на угол ϕ вокруг оси X
(матрица F);
4)
выполнение преобразования, обратного произведенному на втором
этапе (матрицы R
-1
и Q
-1
);
5)
выполнение преобразования, обратного произведенному на
первом этапе (матрица Т
-1
) .
6)
На 4-м и 5-м этапах происходит возвращение объекта в исходную
систему координат.
Таким образом, полное преобразование можно записать как
Т R Q F R
-1
Q
-1
Т
-1
.
3. Масштабирование
. Применяется для увеличения или уменьшения
изображения фигуры относительно ее начального размера .
Увеличение или уменьшение фигуры производится относительно
начала системы координат по формуле
[ x` y` z` 1 ] = [ x y z 1 ]
1000
000
000
000
z
y
x
S
S
S
.
Если S
x
, S
y
, S
z
коэффициенты масштабирования не равны между собой,
то это приводит к искажению изображения за счет неодинакового
изменения размеров фигуры по направлениям координатных осей.
Отрицательные значения величин S
x
, S
y
, S
z
дают зеркальное
отображение фигуры .
                                               ⎡ cos ϕ     0 sin ϕ      0⎤
                                               ⎢ 0         1   0        0⎥⎥
                  [ x` y` z` 1 ] = [ x y z 1 ] ⎢                            .
                                               ⎢− sin ϕ    0 cos ϕ      0⎥
                                               ⎢                          ⎥
                                               ⎣ 0         0   0        1⎦
     Вращение вокруг координатной оси Z, проходящей через начало
координат, выражается матрицей:
                                               ⎡cos ϕ     − sin ϕ   0   0⎤
                                               ⎢ sin ϕ     cos ϕ    0   0⎥⎥
                  [ x` y` z` 1 ] = [ x y z 1 ] ⎢                            .
                                               ⎢ 0           0      1   0⎥
                                               ⎢                          ⎥
                                               ⎣ 0           0      0   1⎦
      Вращение вокруг произвольной оси описывается комбинацией
простейших преобразований и выполняется в пять этапов:
       1) перенос объекта в новую координатную систему с началом
координат в любой точке (x,y,z) на прямой оси вращения (матрица Т);
       2) совмещение единичного вектора оси X (0,0,1) с вектором
направляющих косинусов (a,b,c) оси вращения путем поворота
координатной системы вокруг осей X и Y (матрицы R и Q);
       3) поворот новой координатной системы на угол ϕ вокруг оси X
(матрица F);
       4) выполнение преобразования, обратного произведенному на втором
этапе (матрицы R-1 и Q-1);
       5) выполнение преобразования, обратного произведенному на
первом этапе (матрица Т-1) .
       6)
      На 4-м и 5-м этапах происходит возвращение объекта в исходную
систему координат.
      Таким образом, полное преобразование можно записать как
                               Т R Q F R-1 Q-1 Т-1 .
      3. Масштабирование. Применяется для увеличения или уменьшения
изображения фигуры относительно ее начального размера .
      Увеличение или уменьшение фигуры производится относительно
начала системы координат по формуле
                                                 ⎡S x     0    0     0⎤
                                                 ⎢0       Sy   0     0⎥⎥
                    [ x` y` z` 1 ] = [ x y z 1 ] ⎢                       .
                                                 ⎢0       0    Sz    0⎥
                                                 ⎢                     ⎥
                                                 ⎣0       0    0     1⎦
Если Sx , Sy , Sz – коэффициенты масштабирования не равны между собой,
то это приводит к искажению изображения за счет неодинакового
изменения размеров фигуры по направлениям координатных осей.
     Отрицательные значения величин Sx , Sy , Sz дают зеркальное
отображение фигуры .