复合变换
有多个变换称为复合变换。我们同样可以追踪i-hat
和j-hat
,并用矩阵描述这个复合变换。
例如: 旋转与剪切的‘复合变换’
对复合变换进行拆分计算和直接使用复合矩阵得到的结果理应相同。


我们在对向量应变变换的时候需要先应用右侧的变换,再应用左侧的变换。因为函数记号,我们将函数写在变量左侧。所以我们从右往左侧开始读。
只有在第一个矩阵的列数等于第二个矩阵的行数时才可以相乘。
$$
\begin{bmatrix}
0&2\\
1&0
\end{bmatrix}
\begin{bmatrix}
1&-2\\
1&0
\end{bmatrix}
$$
这里我们定义左侧为m2
,右侧为m1
。此时m1
中的
$$
\begin{bmatrix}
1\\
1
\end{bmatrix}
$$
为i-hat
$$
\begin{bmatrix}
-2\\
0
\end{bmatrix}
$$
为j-hat
所以计算的过程如下
$$
\begin{bmatrix}
1\begin{bmatrix}
0\\
1
\end{bmatrix}
&
-2\begin{bmatrix}
0\\
1
\end{bmatrix}
\\
+ & +
\\
1\begin{bmatrix}
2\\
0
\end{bmatrix}
&
0\begin{bmatrix}
2\\
0
\end{bmatrix}
\end{bmatrix}
=
\begin{bmatrix}
2&0\\
1&-2
\end{bmatrix}
$$
现在我们用用变量代替数值

计算公式
结果的第一行第一列为m2
的第一行乘m1
的第一列
结果的第一行第二列为m2
的第一行乘m1
的第二列
依次类推

公式就是上述复合变换的推导结果
复合变换满足结合律
试想一下,我们先旋转再剪切再旋转,和先旋转再旋转再剪切,他们的结果是一样的,这没什么好证明的,可以尝试将向量放置在笛卡尔坐标系中验证。