矩阵的变换
来源:互联网 发布:互联网运营工资 知乎 编辑:程序博客网 时间:2024/06/05 22:46
在OpenGL图形绘制过程中,常常需要对相应元素的坐标进行变换产生动画效果,而元素的坐标则是用矩阵来表示。因此在本文当中记录一下矩阵的变换。欢迎光临我的个人网站Orient一起讨论学习。这里是我的GitHub,如果您喜欢,不妨点个
star
。☺
矩阵与向量相关概念在此不做解释了,如果看官不了解,可自行百度查询。在此仅记录缩放、位移和旋转的变换。
在OpenGL中,一般使用四维向量来描述对应元素的 x轴
、y轴
、z轴
位置以及 alpha
值。
缩放
对一个向量进行缩放(Scaling)就是对向量的长度进行缩放,向量方向保持不变。
假设我们要使向量 (x, y, z, 1)
的 x
值缩放 S1
倍, y
值缩放 S2
倍, z
值缩放 S3
倍。我们需设置这么一个缩放矩阵:
缩放只需要用缩放矩阵乘上需要缩放的向量即可:
位移
位移(Translation)是在原始向量的基础上加上另一个向量从而获得一个在不同位置的新向量的过程
我们把位移向量表示为: (Tx, Ty, Tz,)
,定义位移矩阵矩阵为:
旋转
下面给出几种沿不同轴旋转的矩阵(选装角度为θ):
沿x轴旋转
沿y轴旋转
沿z轴旋转
沿任一轴 (Rx, Ry, Rz)
旋转
组合变换
组合变换只需要依次乘上变换矩阵即可。(从右往左乘)
例如:将向量 (x, y, z)
先缩放2倍,再位移 (1, 2, 3)
个单位:
变换矩阵如下:
最终结果如下:
即向量 (x, y, z)
先缩放了2倍,然后位移了 (1, 2, 3)
个单位。
阅读全文
0 0
- OpenGL的变换矩阵
- 矩阵的坐标变换
- 矩阵的空间变换
- 矩阵的初等变换
- 矩阵的初等变换
- 矩阵、向量的变换
- 矩阵的变换
- 变换矩阵的合并
- 矩阵变换:逆矩阵的推导
- 关于Normal的矩阵变换
- RT矩阵的各种变换
- 变换的矩阵表示形式
- 矩阵的三维变换(转)
- 图形变换的矩阵方法
- cv2DRotationMatrix的旋转变换矩阵
- opengl的变换和矩阵
- 矩阵的坐标变换(转)
- 矩阵的坐标变换(转)
- PHPStorm 破解版
- POJ 1737 数学(男人八题一)
- Android 报错 java.lang.SecurityException: caller uid 10431 is different than the authenticator's uid
- Windows Anaconda(Python集成环境)
- 纹理单元
- 矩阵的变换
- java基础之泛型和装饰模式
- Android系统下安装openVPN流程
- 图形的变换
- 求一颗二叉树的镜像
- Spark 2.1 -- spark SQL , Dataframe 和DataSet 指南
- 初次使用git遇到的问题
- Odoo 创建特定布局的页面
- 万能头文件&&clock