变换 Transform

 

矩阵 Matrix

 

向量 是由 方向和大小组成的一个数据 看到公式里 字母上面带个横杠 ,一般代表的就是向量

OpenGL学习——变换 Transform

方向 Direction

大小 Magnitude

标量 Scalar 用于和向量计算的一个值   类似一个矩阵或者向量的缩放值的概念

OpenGL学习——变换 Transform

向量取反 对一个向量取反,会对其方向逆反

向量相加 每个分量相加即可

OpenGL学习——变换 Transform

向量相减 两个向量相减,会得到这俩向量指向位置差

OpenGL学习——变换 Transform

 

长度 如果你把向量放到二维图上看,其实就一个直角三角形,可以用勾股定理来计算

OpenGL学习——变换 Transform

单位向量 Unit Vector 也叫做 标准化 Normalizing 斜边长1的一个向量 ,向量的分量/向量长度 组合出的向量就是单位向量

OpenGL学习——变换 Transform

向量相乘 分为点乘和叉乘

点乘 DotProductOpenGL学习——变换 Transform 每个分量相乘然后再相加

OpenGL学习——变换 Transform

叉乘 Cross Product 看公式就行了 反正看着头晕

OpenGL学习——变换 Transform

 

矩阵 i j 是矩阵的下标代表  i代表 行 j代表列 和坐标不一样 一个 2x3的矩阵是

 

OpenGL学习——变换 Transform这是2的下标应该是 1,2 而不是2,1 先取行 在取列

 

矩阵加减 

与标量 加 减 乘

OpenGL学习——变换 Transform

OpenGL学习——变换 Transform

OpenGL学习——变换 Transform

矩阵之间加减 和标量加减差不多,只是2个矩阵的维度必须一样

OpenGL学习——变换 Transform

OpenGL学习——变换 Transform

 

矩阵相乘 和向量相乘一样有个固定公式,也是必须2个矩阵维度相同

 

 

OpenGL学习——变换 Transform

OpenGL学习——变换 Transform

 

单位矩阵 是一个除了对角线以外都是0的N*N的矩阵 下面图可以理解 每行的1 就是对应取后面矩阵的列的值 如果 第一行1 在第二位 就取值2 这有啥用的呢,我也不知道

 

OpenGL学习——变换 Transform

 

用矩阵对向量缩放 S代表每个向量分量的缩放值

 

 

OpenGL学习——变换 Transform

位移 因为W值为1 所以可以用这个来控制位移加减

OpenGL学习——变换 Transform

 

旋转 Rotation 旋转我们就需要了解角度和弧度,有了这个值才能确定旋转的一个量

弧度转角度:角度=弧度*(180.0f/PI)

角度转弧度:弧度=角度* (PI/180.0f)

PI约等于 3.14159265359

 

旋转轴 Rotation Axis

旋转的矩阵公式

OpenGL学习——变换 Transform

 

矩阵的组合 前面记录了几个矩阵的变换的公式,现在可以用相乘的方式把矩阵组合起来再和向量相乘最终可以一次行进行多种变换方式

这是一个 缩放两倍  x y z 分别移动 1 2 3个位置的矩阵组合公式

 

OpenGL学习——变换 Transform

OpenGL学习——变换 Transform

 

 

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-04
  • 2019-07-31
  • 2021-09-27
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-11-20
  • 2021-05-16
  • 2022-12-23
  • 2021-11-19
相关资源
相似解决方案