八讲 三维视图计算 实现.pptVIP

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

二维及三维空间的变换概念、矩阵表示、三维视图 三维视图 平面几何投影的计算 平面几何投影的实现 坐标系 平面几何投影的计算 单点透视投影 投影坐标的矩阵求法 单点透视投影的另一种情况 投影平面z=0上的正投影 构造一般情况下的投影直线 求通用投影变换矩阵 求通用投影变换矩阵(续) 由投影矩阵求出的投影坐标 通用投影变换矩阵的参数变化 求单点透视的灭点 平面几何投影的实现 三维视体的概念模型 两种典型的视体 三维视图的实现 平行投影和透视投影的规格化变换 平行投影的各个不同阶段。 视图参数为:VRP=(0.325,0.8,4.15), VPN=(0.227,0.267,1.0), VUP=(0.293,1.0,0.227), PRP=(0.6,0.0,-1.0), 窗口=(-1.425,1.0,-1.0,1.0), F=0.0,B=-1.75。 Npar形成过程 Npar形成过程(续一) Npar形成过程(续二) Npar形成过程(续三) Npar形成过程(续四) 透视投影视图变换不同阶段产生的结果 视图参数是:VRP=(1.0,1.275,2.6),VPN=(1.0,0.253,1.0), VUP=(0.414,1.0,0.253),PRP=(1.6,0.0,1.075), 窗口为:(-1.325,2.25,-0.575,0.575),F=0,B=-1.2)。 透视投影 房屋裁剪后的最终透视投影 规 格 化 视 体 的 获 取 Sper=S1·S2 比例变换前后视体的切面图 齐次坐标W对裁剪的影响 三维规格化视体的裁剪 三维规格化视体的裁剪(续) 在齐次坐标系中裁剪 齐次坐标裁剪(续) P1和P2都被映射到W=1平面上的同一个点(过P1、P2和原点的直线上的其它点也映射到该点)。如果裁剪仅限于A区域,那么点P2将不能被正确显示。 P1P2线段的投影分成了两部分,一部分由P2?趋向于+?,另一部分由P1?趋向于-?(实线表示裁剪范围内的部分,虚线表示裁剪范围外的部分)。 映射到视区 小结 坐标系 裁剪视体 标准视体 规格化视体在平行投影时为单位立方体,在透视投影时为正四棱台。 下面我们将具体介绍三维规格化视体的剪裁算法。对于任意一点,该算法将使用一个二进制6位代码来表示,各位分别在满足下列情况时置1: 第1位: 点在视体上方 y 1 第2位: 点在视体下方 y -1 第3位: 点在视体右方 x 1 第4位: 点在视体左方 x -1 第5位: 点在视体后方 z -1 第6位: 点在视体前方 z 0 若一条线段两个端点的编码都为零,则线段落在视体内;若两端点的编码逻辑与后(按位与)为非零,则此线段落在视体外。否则,需对此线段进行分段处理,要求分别计算出视体六个面与该线段的交点。 进行交点的计算时,P0(x0,y0,z0)和 P1(x1,y1,z1)两点间的线段应表示成参数方程组的形式: X=x0 + t(x1-x0), (1) Y=y0 + t(y1-y0), (2) Z=z0 + t(z1-z0) ,0 ≤ t ≤ 1 (3) 其中t∈[0,1],以上三个方程式给出了P0 P1线段上所有点的坐标。 现在我们计算线段与视体表面的交点。对于y=1平面,将y=1代入方程式(2),可得t=(1-y0)/(y1-y0)。若t值不属于[0,1],则交点位于过p0 和p1的直线上但不在p0和p1之间,所以无须考虑。若t∈[0,1],则可将t值代入方程组以求出交点的x、z坐标: x = x0 + (x1-x0)(1-y0)/(y1-y0) , z = z0 +(z1-z0)(1-y0)/(y1-y0) (4) 由于在算法中使用了区域编码,所以我们不需要检查是否t∈[0,1]。 对于其它五个面与直线之间的交点求法可依此类推。 规格化透视投影视体的裁剪算法中各编码位如下所示: 第1位: 点在视体上方 y -z 第2位: 点在视体下方 y z 第3位: 点在视体右方 x -z 第4位: 点在视体左方 x z 第5位: 点在视体后方 z -1 第6位: 点在视体前方 z zmin 计算线段与斜面的交点很简单,对于y = z 平面, 由方程(2)和(3)可得:

文档评论(0)

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

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

1亿VIP精品文档

相关文档