Реферат: Задачи графических преобразований в приложениях моделирования с использованием ЭВМ
или, более общо, на четверку
(hx hy hz), h = 0.
Каждая точка пространства (кроме начальной точки О) может быть задана четверкой одновременно не равных нулю чисел; эта четверка чисел определена однозначно с точностью до общего множителя.
Предложенный переход к новому способу задания точек дает возможность воспользоваться матричной записью и в более сложных трехмерных задачах.
Любое аффинное преобразование в трехмерном пространстве может быть представленно в виде суперпозиции вращений, растяжений, отражений и переносов. Поэтому вполне уместно сначала подробно описать матрицы именно этих преобразований (ясно, что в данном случае порядок матриц должен быть равен четырем).
А. Матрицы вращения в пространстве.
Матрица вращения вокруг оси абсцисс на угол j:
|
0
|
0 -sin j cos j 0
0 0 0 1
Матрица вращения вокруг оси ординат на угол y:
|
|
sin y 0cos y 0
0 0 0 1
Матрица вращения вокруг оси аппикат на угол c:
|
-sin
|
0 0 1 0
0 0 0 1
Полезно обратить внимание на место знака “ - ” в каждой из трех приведенных матриц.
Б. Матрица растяжения-сжатия:
a 0 0 0
|
|
0 0 g 0
0 0 0 1
где
a > 0 – коэффицент растяжения (сжатия) вдоль оси абсцисс;
b > 0 – коэффицент растяжения (сжатия) вдоль оси ординат;
g > 0 – коэффицент растяжения (сжатия) вдоль оси аппликат.
В. Матрицы отражения
Матрица отражения относительно плоскости ху:
1 0 0 0
|
|
0 0 -1 0
0 0 0 1
Матрица отражения относительно плоскости yz:
-1 0 0 0
|
|
0 0 1 0
0 0 0 1
Матрица отражения относительно плоскости zx:
1 0 0 0
|
|
0 0 1 0
0 0 0 1
Г. Матрица переноса (здесь (l, m, n) - вектор переноса):
1 0 0 0
|
|
0 0 1 0
l m n 1
Как и в двумерном случае, все выписанные матрицы невырождены.
Приведем важный пример построения матрицы сложного преобразования по его геометрическому описанию.
Пример 3. Построить матрицу вращения на угол j вокруг прямой L, проходящей через точку А (a, b, c) и имеющую направляющий вектор (l, m, n). Можно считать, что направляющий вектор прямой является единичным:
l2 + m2 + n2 = 1
На рис. 10 схематично показано, матрицу какого преобразования требуется найти.