矩阵的学习目的。。。空间坐标转换
矩阵 : 就是以行和列的形式组织起来的矩阵数字块
通常矩阵的描述是 n行m列 即 m12 表示的是m的第一行第二列的元素
特殊的矩阵: 1、方阵 : 行数和列数相同的矩阵就是方阵(一般也就到2×2,3×3,4×4的方阵)
2、对角线元素: 只存在于方阵中,方阵中的行号和列号相同的元素就是对角线元素
3、非对角线元素: 方阵中除了对焦线元素,其他都是非对角线元素
4、对角矩阵: 非对角线元素都是0的方阵,对角元素可以是任意的
5、数量矩阵: 对角线元素都相等的对角矩阵
6、单位矩阵: 对角线元素都为1的对角矩阵
矩阵的行列式、代数余子式,标准伴随矩阵,逆矩阵。就不写怎么算了。。
注意点: 代数余子式 例如 Cij = -1的i + j 幂次方 × (去掉第i行,和第j列组成的矩阵行列式)
逆矩阵:表示矩阵M的一个变换,M的逆矩阵表示的就是相反的变换 可记作 M的-1次
小知识点: M矩阵的行列式为 0 的话,该矩阵是不可逆的
矩阵的逆 = M的标准伴随矩阵 / M的行列式
矩阵的几何意义: 对于给定的向量a , 矩阵M , a * M = b ,那么我们可以说a 经过M的转换结果得到了b向量
M 描述的是一次变换
一般使用方阵的特性来描述一个物体变化的规律: 例如、旋转、缩放、投影、镜像、平移
矩阵与矩阵相乘 : 注意 满足条件,乘号左边的矩阵的列 要和 乘号右边的矩阵的行 保持一致才能进行相乘
一般三维空间的点 的坐标 表示 (x,y,z) 我的理解,,看成一个一行三列的矩阵
在乘以 一个三行三列的方阵。(方阵代表的某种变化)
就会的到一个经过变化的新的 坐标
矩阵与标量相乘: 就是让这个标量与矩阵中的每一个元素相乘,得到新的矩阵
三维空间下的旋转矩阵
绕X轴旋转的矩阵 绕Y轴旋转的矩阵 绕Z轴旋转的矩阵
1 0 0 Cosθ 0 -Sinθ Cosθ Sinθ 0
0 Cosθ Sinθ 0 1 0 -SInθ Cosθ 0
0 -Sinθ Cosθ Sinθ 0 Cosθ 0 0 1
三维的缩放矩阵
Kx 0 0
0 ky 0
0 0 kz
三维投影矩阵
向XY面投影的矩阵: 是坐标的Z变成0 向XZ面投影的矩阵: 是坐标的Y变为0 向YZ面投影的矩阵: 是坐标的X变为0
1 0 0 1 0 0 0 0 0
0 1 0 0 0 0 0 1 0
0 0 0 0 0 1 0 0 1
镜像矩阵
绕XY平面镜像, Z值变成相反的。 绕XZ平面镜像, Y值变成相反的。 绕YZ平面镜像, X值变成相反的。
1 0 0 1 0 0 -1 0 0
0 1 -1 0 -1 0 0 1 0
0 0 -1 0 0 1 0 0 1
平移矩阵
1 0 0 0
0 1 0 0
0 0 1 0
X1 Y1 Z1 1
X1 Y1 Z1 表示的是分别在X轴Y轴Z轴方向上的平移。
齐次坐标
有几何意义的三维向量。
齐次坐标有四个维度,但是表示的是三维空间下的几何意义。
(X,Y,Z) => (X,Y,Z,W)
W =0 => (X,Y,Z)表示的是方向
W = 1=> (X,Y,Z)表示的是意义
4X4矩阵表示三维坐标的线性变换
例如: 绕X轴旋转的矩阵
1 0 0 0
0 Cosθ Sinθ 0
0 -Sinθ Cosθ 0
0 0 0 1