1. 3D Transformations
scale
S
(
s
x
,
s
y
,
s
z
)
=
(
s
x
0
0
0
0
s
y
0
0
0
0
s
z
0
0
0
0
1
)
S(s_x,s_y,s_z)= \left( \begin{matrix} s_x & 0 & 0 & 0\\ 0 & s_y & 0 & 0\\ 0 & 0 & s_z & 0\\ 0 & 0 &0 & 1 \end{matrix} \right)
S(sx,sy,sz)=⎝⎜⎜⎛sx0000sy0000sz00001⎠⎟⎟⎞
Translation
T
(
t
x
,
t
y
,
t
z
)
=
(
1
0
0
t
x
0
1
0
t
y
0
0
1
t
z
0
0
0
1
)
T(t_x,t_y,t_z)= \left( \begin{matrix} 1 & 0 & 0 & t_x\\ 0 & 1& 0 & t_y\\ 0 & 0 & 1 &t_z\\ 0 & 0 &0 & 1 \end{matrix} \right)
T(tx,ty,tz)=⎝⎜⎜⎛100001000010txtytz1⎠⎟⎟⎞
2. Viewing (观测) transformation
model transformation -> view transformation -> projection transformation
2.1 View (视图) / Camera transformation
利用摄像机和物体的相对运动关系,始终把摄像机从任一位置移动到标准位置,再把其他所有物体和相机一样移动。
2.2 Projection (投影) transformation
3D到2D的转化
Orthographic (正交) projection
不会带来近大远小的效果,多用于工程制图
Perspective (透视) projection
进大远小,平行线不在平行,会相交
定义一个视锥: 垂直可视角度 宽高比