一,原理

1.四阶矩阵运算的原理和定义

clipboard.png

  • 在变换操作中,w 默认为1
  • 变换基点:x,y,z 构成的点位 point(x,y,z),这是变换的基点
  • a,b,c,...,p,每个因子都会和基点某一属性(比如x)相乘,然后得到相应属性变换后的值。
  • 矩阵因子结构:对应不同的变换方式,矩阵因子的函数体会不同

2.顶点的变换方式有三种:

  • 移动:距离
  • 旋转:弧度
  • 缩放:比例,一般是 (0-1)

3.物体变换的本质:物体的变换就是对架构了物体的所有顶点进行变换

4.顶点变换的本质:顶点位置的改变

  • 顶点的移动是其基于某一基点的移动
  • 顶点的缩放是其到某一基点的距离的改变
  • 顶点的旋转是其围绕某一基点,在某一个方向上,做弧形移动

5.变换矩阵的作用:在对顶点的进行多种方式的复杂变换时,使程序简洁明了

二,顶点变换的运算规则

1.移动:已知顶点的移动距离distance 为(dx,dy,dz),求用于计算移动点位的矩阵因子结构

  • 移动的表达式为:
x'=x+dx
y'=y+dy
z'=z+dz
  • 根据表达式推导矩阵的因子结构

clipboard.png

2.旋转:已知顶点绕x 轴旋转的弧度radian为θ,求用于计算旋转点位矩阵因子结构

  • 绕x 轴旋转的表达式为:
y'=y*cos(θ)-z*sin(θ)
z'=y*sin(θ)+z*cos(θ)
  • 根据表达式推导矩阵因子结构
1     0            0              0
0     cos(θ)    -sin(θ)           0
0     sin(θ)     cos(θ)           0
0     0            0              1
  • 同理可以推导出绕y 轴和z 轴旋转的矩阵因子结构

y 轴:

cos(θ)     0      sin(θ)       0
0          1      0            0
-sin(θ)    0      cos(θ)       0
0          0      0            1

z 轴:


cos(θ)      -sin(θ)      0      0
sin(θ)       cos(θ)      0      0
0            0           1       0
0            0           0      1

3.缩放,矩阵因子结构的推导原理同上

x     0     0     0
0     y     0     0
0     0     z     0
0     0     0     1

4.矩阵默认的因子结构一般为:基点在零点,缩放为1,如下

1     0     0     0
0     1     0     0
0     0     1     0
0     0     0     1

注:
以上几种矩阵因子结构是比较基础和常用的。
矩阵因子还有许多其它的结构,比如欧拉euler,四元数quaternion,转置矩阵transpose 等等。
详情可参考: https://threejs.org/docs/inde...


已注销
148 声望9 粉丝

« 上一篇
路径跟随
下一篇 »
多边形面积

引用和评论

0 条评论