CG005计算机图形学几何变换
几何变换(geometric transformation) :应用于对象几何描述并改变它的位置 方向或者大小的操作称之为几何变换,有时又称为几何变换。
平移 旋转 缩放 及基本的几何变换
二维变换
二维平移
$$
\begin{gather} P=
\begin{Bmatrix} x \ y \end{Bmatrix},
P'=\begin{Bmatrix} x' \ y' \end{Bmatrix},
T=\begin{Bmatrix} t_x \ t_y \end{Bmatrix}
\end{gather}
$$
矩阵表示的二维平移方程:
P' = P + T
二维旋转
坐标采用极坐标方式更易于理解:
$$
\begin{gather} P=
\begin{Bmatrix} r sinφ \ r cos φ \end{Bmatrix},
R=\begin{Bmatrix} cos θ & -sin θ \ sin θ & cos θ\end{Bmatrix}
\end{gather}
$$
P‘ = R P
二维缩放
二维缩放方程可以表达为:
$$
\begin{gather}
\begin{Bmatrix} x’ \ y‘ \end{Bmatrix}=
\begin{Bmatrix} s_x & 0 \0 & s_y \end{Bmatrix}
\begin{Bmatrix} x \ y \end{Bmatrix}
\end{gather}
$$
或
P' = S P
其中S 是等式中的 2 × 2 缩放矩阵
三维的在二维的基础上引申即可。
点和向量的区别
点是三维空间中的某个坐标,是绝对的,它的值是参照原点的,而向量用于表示力和速度等具有方向和大小的量,
通常用具有长度和方向的线段来表示,虽然他们都具有三个分量,但对于向量,如果将向量放在坐标系中的任何位置(平移),都不会改变其性质,因为向量表示的是方向和大小,与位置距离无关,它的值是相对与基准点的。下图是三维顶点和向量的数学符号或称为列矩阵。
齐次坐标
所谓齐次坐标就是将一个原本是n维的向量用一个n+1维向量来表示。 显然一个向量的齐次表示是不唯一的,齐次坐标的h取不同的值都表示的是同一个点。 比如齐次坐标[hx,hy,h] 表示的是 [x,y]. (h !=0)
通过引入齐次坐标,可以将 图形的移动 旋转 缩放,都转化为矩阵的乘法。
1.png简书不支持,latex 所以上面显示看起来有点麻烦~~~