5.3投影矩阵.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
5.3投影矩阵.ppt

Angel: Interactive Computer Graphics 3E ? Addison-Wesley 2002 计算机图形学 杨 武 影像科学与技术实验室 东南大学计算机学院 yangwu@seu.edu.cn 第五章之第三节 投影矩阵 基本内容 推导出在标准OpenGL投影中所用的投影矩阵具体表示 介绍倾斜投影 介绍投影规范化 规范化 不想为每种类型的投影设计不同的投影矩阵,所以把所有的投影转化为具有默认视景体的正交投影 这种策略可以使我们在流水线中应用标准变换,并进行有效的裁剪 流水线 注释 在模型-视图变换和投影变换的过程中,我们是一直在四维齐次坐标中的 默认值为单位阵(正交视图) 规范化使得不管投影的类型是什么,都是相对于默认的简单立方体进行裁剪 投影直到最后时刻才进行 从而可以尽可能的保留深度信息,这对隐藏面消除是非常重要的 正交规范化 glOrtho(left,right,bottom,top,near,far) 正交规范化矩阵 两步 把中心移到原点,对应的变换为 T(-(left+right)/2, -(bottom+top)/2,(near+far)/2)) 进行放缩从而使视景体的边长为2 S(2/(left-right),2/(top-bottom),2/(near-far)) 最后的投影 令 z =0 等价于如下的齐次坐标变换 从而在4D中一般的正交投影为 倾斜投影 OpenGL的投影函数不支持一般的平行投影,例如立方体的如下图示 此时立方体好像发生了剪切,然后再进行正交投影 倾斜投影= 剪切+正交投影 一般的剪切 侧视图 剪切矩阵 xy 剪切 (z 值不变) 投影矩阵 一般情形 等价性 对裁剪体的影响 投影矩阵P = STH把原来的裁剪体变换为默认的裁剪体 简单透视 考虑简单透视:COP在原点,近裁剪面在z = -1,由平面x = ± z, y = ±z确定的有90度的视野 透视矩阵 齐次坐标下的简单投影矩阵为 注意这个矩阵与远裁剪面无关 推广 N = a 与b的选取 规范变换 原来的 裁剪体 规范化与隐藏面消除 虽然这里选择的透视矩阵形式上看起来有点儿任意,但这种选择保证如果在原来的裁剪体内z1z2, 那么变换后的点满足z1’z2’ 因此如果首先应用规范变化,隐藏面消除算法有效 然而,公式z’ = -(α+β/z)意味着由于规范化导致距离发生了改变,这可能导致数值问题,特别是当近距离非常小的时候更是如此 OpenGL 的透视 glFrustum 可以定义非对称视景体,但 gluPerspective 不能做到 OpenGL 透视矩阵 在glFrustum中的规范化需要进行一个初始剪切变换,从而形成一个视景棱台,接着进行放缩变换,得到规范后的透视视景体。最后,透视矩阵导致只需要最后的正交变换: 投影矩阵 为何采取这种方法? 规范化使得只需要一个流水线体系就可以进行透视投影和正交投影 尽可能位于四维齐次空间中,以便保持隐藏而消除和明暗处理所需要的三维信息 简化了裁剪的操作 * 模型-视图 变换 投影变换 透视除法 裁剪 投影 4D ? 3D 相对于默认立方体 3D ? 2D 规范化 ?求出把指定裁剪体转化为默认裁剪体的变换 P = ST = Morth = P = MorthST 顶视图 H(q,f) = P = Morth H(q,f) P = Morth STH(q,f) 顶视图 DOP DOP 近面 远面 对象 裁剪体 z = -1 z = 1 x = -1 x = 1 变形后的对象 M = 透视除法后,点 (x, y, z, 1) 变到了 x’ = -x/z , y’ = -y/z ,Z’ = -(a+b/z) 无论α, β的值是什么,在正交透影后就得到所期望的点。此时矩阵N非奇异 如果取 a = b = 那么近平面映射到 z = -1 远平面映射到 z =1 各侧边映射到 x = ? 1, y = ? 1 原来的 对象 变换后的 裁剪体 变形后的对象 P = NSH P =NSH =

文档评论(0)

wangshirufeng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档