当前位置: 首页 > article >正文

games101-(3/4)变换

缩放:

对称

切变

旋转

考虑(1.0)这个点

同理考虑(0,1)点即可

齐次方程

考虑在二维的坐标点后面增加一个维度

所有的仿射变换都可以写成齐次坐标的形式

a b

c d 

是线性变换

tx ty 是平移;

统一缩放 选择  平移的表示形式;代价是增加一个维度

变换之间的组合:

矩阵之间的变换不满足交换律,先后顺序影响最终的变换效果

坐标是一个列向量,施加的矩阵会从右到左使用R45 T(1,0)

如何将一个非原点 C 进行旋转

(1)平移到原点  T(-C)

(2)在原点进行旋转

(3) 平移到点C

三维空间

三维空间的一个 (x y z w)表示的是 (x/w,y/w,z/w)这个点

它是先应用线性变换后 再平移:

三维空间中的沿着轴n的旋转 a可以被分解为

旋转的逆运算=旋转的转置

如果一个矩阵的逆= 转置 则为正交矩阵

观测 viewing

  • view 视图
  • projection 投影
    •  正交投影 orthographic projection
    • 透视 perspective projection

        如何得到一张照片:

(1)找到一个好的位置并且聚集好人(模型变换)

(2)找到一个好的角度防止相机(视图变换)

(3)拍摄(投影变换)

视图变换

位置 看的方向  向上的方向 可以定义相机=》

将任意点相机转换到在原点 Y轴为向上方向  朝着-Z方向

考虑 旋转矩阵的逆 = 转置;考虑 g 到-z ,t 到 y  (gxt)到x 的逆运算如上,在转置则是正运算

投影变换

透视投影导致 “近大远小”

正交投影

一般的做法;

将立方体移动到坐标轴中心;

x 轴:[l,r] 左右 l<r

y轴:[b,t] 下上,b<t 

z轴:f,n   远近,f<n;从 z 轴正方向向负方向观测,  

透视投影

坐标系中的每个点同时乘z,还是在坐标系中

(1)近平面不变;远平面向中心压缩至和近平面一致,且中心点不变;近平面即左边小的屏幕,z轴正方向

(2)做正交投影

考虑远平面上一点:0 0 f


http://www.kler.cn/a/521958.html

相关文章:

  • 本地部署deepseek模型步骤
  • SSM开发(七) MyBatis解决实体类(model)的字段名和数据库表的列名不一致方法总结(四种方法)
  • 数字化转型-工具变量(2024.1更新)-社科数据
  • STM32 LED呼吸灯
  • matlab提取滚动轴承故障特征
  • 构建 QA 系统:基于文档和模型的问答
  • 弹性分组环——RPR技术
  • python Fabric在自动化部署中的应用
  • 使用 Python 和 scikit-learn 实现 KNN 分类:以鸢尾花数据集为例
  • 【由浅入深认识Maven】第3部分 maven多模块管理
  • fastadmin中require-form.js的data-favisible控制显示隐藏
  • 基于Flask的哔哩哔哩综合指数UP榜单数据分析系统的设计与实现
  • S4 HANA定义税码(FTXP)
  • 【江苏省乡镇街道边界】面图层shp格式arcgis数据+乡镇名称和编码wgs84无偏移内容测评
  • 基于SpringBoot多数据源解决方案
  • qt.qpa.plugin: Could not find the Qt platform plugin “dxcb“ in ““
  • 算法【01背包】
  • [EAI-023] FAST: Efficient Action Tokenization for Vision-Language-Action Models
  • Microsoft Visual Studio 2022 主题修改(补充)
  • Android13源码下载和编译过程详解
  • [JMCTF 2021]UploadHub
  • 前端版本号管理:理解和应用
  • Golang的协程同步实现
  • 自制免费联网搜索API供AI使用
  • 进程池的制作(linux进程间通信,匿名管道... ...)
  • 【MySQL】存储函数