CodeNet / Приложения / Алгоритмы / Графика / Учебник по компьютерной графике
CodeNet / Приложения / Графика / Учебник по компьютерной графике
CodeNet / Приложения / Графика / Учебник по компьютерной графике
Компьютерная Графика
- Работа в трех мерном пространстве. (основы)
- Перенос и повороты в трех мерном пространстве
Перенос и повороты в трех мерном пространстве
Перенос
P(x,y,z) P’(x’,y’,z’)
- перенос в трехмерном пространстве (ai = const)
[x’,y’,z’,1] = [x,y,z,1]T , T= (3.1)
Т – матрица переноса
1,2,3 стр. матр. Т - отображение бесконечно удаленной точки
[a1,a2,a3,1] - отображение начала координат
Поворот
Cos a = C
Sin a = S
[x’,y’,z’] = [x,y,z]Rz
Матрица поворота вокруг оси Oz :
Rz =
Матрица поворота вокруг оси Ox :
Rx =
Матрица поворота вокруг оси Oy :
Ry =
Матрица переноса начала координат в какую-то точку А
T-1 =
Rx-1 = (3.4)
Ry-1 = (3.5)
Rz-1 = (3.6)
Матрица поворота вокруг линии, проходящей через начало координат (поворот вокруг вектора v с началом в точке O)
r = |v| =
q =
v1 = r Sin j Cos q
v2 = r Sin j Sin q
v3 = r Cos j
[x’,y’,z’] = [z,y,z] Rz-1 - совпадает с положительным направлением оси Oz
Ось x’ имеет положительное направление вектора (v1,v2,0)
[x’’,y’’,z’’] = [z’,y’,z’] Ry-1
[x’’’,y’’’,z’’’] = [z’’,y’’,z’’] Rv-1
Rv =
[x’’’,y’’’,z’’’] = [x,y,z] Rz-1 Ry-1 Rx-1
[x*,y*,z*] = [x’’’,y’’’,z’’’] Ry Rz - возвращение назад координатной оси
[x*,y*,z*] = [x,y,z] Rz-1 Ry-1 Rv Ry Rz
Rz-1 =
Ry-1 =
Rv =
Ry =
Rz =
Rz-1 Ry-1 Rv Ry Rz = R R = (3.7)
Точка A(a1,a2,a3)
1.
T-1 =
2.
R* =
3.
T =
Матрица обобщенного поворота RGEN = T-1 R* T
[x*,y*,z*,1] = [x,y,z,1] RGEN (3.8)
Предыдущий раздел | Предыдущая тема | Следующая тема | Слудующий раздел
Оставить комментарий
Комментарии
1.
+2 / -0
24 ноября 2007, 12:33:35
Не советую читать эту статью, т.к. введённые в ней обозначения слишком отличаются от тех, который приняты в компьютерной графике. Запутаетесь потом.