第 5 章 使用矩阵计算变换

本章内容

  • 将线性变换写成矩阵
  • 用矩阵相乘来组合并应用线性变换
  • 用线性变换操作不同维度的向量
  • 使用矩阵平移二维向量或三维向量

我在第4章的结尾提出了一个很重要的思想:任何三维线性变换都可以只用3个向量或9个数来指定。正确选择这9个数,可以实现绕轴旋转、平面反射、平面投影、缩放,或者其他任意三维线性变换。

“绕轴逆时针旋转90°”的变换可以被等价描述为对标准基向量的作用。也就是说,结果是(0, 1, 0)、(-1, 0, 0)和(0, 0, 1)。无论是以几何学的方式还是以3个向量(9个数)的方式思考这个变换,它都是同一个对三维向量进行操作的虚拟机器(见图5-1)。虽然实现方式可能不同,但这些机器产生的结果别无二致。

图5-1 两台机器执行相同的线性变换。几何推理为上面的机器提供动力,而9个数则为下面的机器提供动力

排列在网格中、用于说明如何执行线性变换的数被称为矩阵。本章重点介绍如何使用这些数字网格作为计算工具,因此包含的数字运算比前几章多了一些。不要被吓到!归根结底,我们仍然只是在进行向量变换。

矩阵可以利用对标准基向量的操作数据,计算给定的线性变换。本章的所有表示法都是为了组织这个过程,4.2节已经介绍过了,这里并没有引入任何其他陌生的概念。学习新的表示法虽然痛苦,但是有回报。最好将向量看作几何对象或数字元组。同样,将线性变换看作数字矩阵,可以拓展我们的心智模型。