矩阵(二)

在计算机几何图形中,矩阵的作用可以定义旋转,平移,缩放,投影,镜像等等,在三维设计软件中,对于物体的操作尤其重要。本篇需要用到向量的点乘和叉乘相关知识点和矩阵的基本概念,如果对向量和矩阵不太熟悉,可以先理解向量和矩阵的基本知识再来看本篇。

矩阵定义旋转

2D向量的旋转

image.png
image.png

3D向量的旋转

image.png

绕X轴的旋转矩阵

image.png
image.png

绕Y轴的旋转矩阵

image.png
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BtwcCMvG-1590800890153)(https://i.loli.net/2020/05/30/T7gbPJBDCLHGZVA.png)]

绕Z轴的旋转矩阵

image.png

任意轴的旋转矩阵

向量的投影公式

image.png

向量绕任意轴的旋转

image.png
image.png
image.png
image.png

缩放矩阵

2D向量缩放

image.png
image.png

3D向量缩放

image.png

任意方向的缩放

2D向量的任意方向缩放

image.png
image.png
image.png

3D向量的任意方向缩放

image.png
image.png

正交投影矩阵

2D正交投影矩阵

image.png

3D正交投影矩阵

同样的道理,3D的正交投影矩阵是把三维的向量变成二维的向量。
image.png
image.png
image.png

任意方向的投影

2D任意方向投影

image.png

3D的任意方向投影

和2D矩阵的类似,3D的任意方向投影矩阵可以想象为任意方向的缩放,并且缩放因子k=0,使用3D任意方向缩放推导,3D的任意方向缩放矩阵:
image.png

镜像矩阵

2D镜像投影

image.png

3D镜像矩阵

根据3D任意方向缩放的矩阵,把k=-1即可得到3D镜像矩阵:
image.png

切变矩阵:

2D切变矩阵

image.png
image.png

3D切变矩阵

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FCMChMae-1590800890169)(https://i.loli.net/2020/05/30/Rcf6eVvEpYrtDHg.png)]
image.png
image.png
image.png

矩阵变换的组合:

根据矩阵的结合律,对于向量和多个矩阵相乘,可以先把矩阵相乘,结果成一个矩阵,再和向量相乘,从而提高效率。如:vABCD等于先把矩阵ABCD相乘,得到的一个结果矩阵M,再使用向量v和这个矩阵相乘,即:vABCD=v(ABCD)=vM,如果一个物体需要从物理坐标系转换到世界坐标系,再从世界坐标系转换到屏幕坐标系,那么先把各个坐标系转换的矩阵相乘,得到一个结果矩阵,再用物体和这个结果矩阵相乘,那么就大大的提高了效率了。

本篇参考了《3D数学基础:图形与游戏开发》这本书的内容。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值