GAMES101_Lecture_03 - 变换

:mubu文档转存,自学用

目录

2维变换

Scale

矩阵形式

不均匀缩放

Reflection

Shear - 切变

Rotate

引入齐次坐标

线性变换

平移变换

向量与点

仿射变换

逆变换

组合变换

这个变换是怎么得到的?

结论:

计算方式 (从右往左) ---- right to left

公式性质

变换分解

3维变换

类比二维

齐次坐标表示

仿射

Question


  • 2维变换

    • Scale

      • x' - x prime
      • 矩阵形式

        • s 为缩放矩阵
      • 不均匀缩放

    • Reflection

    • Shear - 切变

      • y 不发生变化
      • x 移动了 x + ay
    • Rotate

      • 默认 绕原点(0,0)进行 逆时针方向旋转

      • 手推公式(2个特殊点)

    • 引入齐次坐标

      • 线性变换

        • 遵循

      • 平移变换

        • 将二维的点和向量增加了一个维度
          • 向量具有平移不变性
          • 同理Blender四元数运算
      • 向量与点

        • 点 + 点 = 2点的中点

      • 仿射变换

        • 坐标向量化
        • 矩阵最后一行的值永远是 0 0 1
        • 注意点:对于 ( x , y ) 来说,变换顺序为先应用了线性变换,再应用 tx ty 的平移变换
          • 在三维空间中顺序也是一样
      • 缩放

      • 旋转

      • 平移

    • 逆变换

      • 定义:变换的反向操作

        • 即是乘 逆矩阵
    • 组合变换

      • 这个变换是怎么得到的?

        • 尝试1 ----- T(1.0) R45 为简记形式

          • 先平移,再默认旋转 显然不成功
        • 尝试2 ---- 先旋转,再平移

        • 得到

      • 结论:
        • 1.复杂变换都是通过简单变换得到的
        • 2.注意变换的顺序
          • 理解:矩阵乘法---不满足交换律
      • 计算方式 (从右往左) ---- right to left

        • 先写出矩阵 [ x , y , 1 ]
        • 先旋转 --- 左侧写出 R45
        • 等旋转结束之后,在旋转的整体上做平移 --- 再往左边写一个 T(1,0)
      • 公式性质

        • 可以通过 结合律 节省计算量
        • 3x3 的矩阵 A1.....An 相乘,最后得到的结果仍然是一个 3x3 矩阵
    • 变换分解

      • 怎样围绕 点 c 旋转,而不是默认围绕原点旋转?

        • 先将 c 点移动到原点
        • 再进行 旋转操作
        • 移回 c 点
  • 3维变换

    • 类比二维

      • 点 1
      • 向量 0
    • 齐次坐标表示

    • 仿射

      • 仍然是 最后一列 tx ty tz 1
      • 最后一行 0 0 0 1
    • Question

      • 3维变换中 先进行 线性变换 还是 先进行 平移变换?(答案在上文中)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值