- 1、本文档共98页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
计算机图形学真实感图形技术;;第8章:真实感图形技术;§8.1概述;(1)构建模型用数学方法建立实体三维模型,并存储到系统中;
(2)投影变换将实体模型转换到三维观察坐标系中;
(3)消隐处理用消隐技术去除视景外的和实体上不可见的面;
(4)光照处理建立光照模型生成真实感图形。
;§8.1.2真实感图形特点;§8.1.2真实感图形特点;第8章:真实感图形技术;8.2.1消隐基础知识
1.消隐的定义;隐藏线(面):根据投影几何的理论,形体上的看不见的图线或(平面)。
消隐:消除形体视图中隐藏线(面)的处理过程。;3消隐算法分类
1)根据消隐对象:
①线消隐:消除物体上不可见的轮廓线。
②面消隐:消除物体上不可见的表面。;4消隐基本原则
1排序
判别消隐对象与观察点之间的距离远近;
对其按x、y、z三个坐标方向进行排序;
确定对象之间的遮挡关系。;8.2.2平面立体消隐算法
;如右图所示。设平面Pi上任一点的外法矢ni与该点的视线矢量vi的数量积:;当视线矢量vi平行于某一基本坐标轴时,平面的外法矢量n与视线矢量的夹角就视为n与坐标轴的夹角。分别用α、β、γ平面的外法矢量n与坐标轴的夹角。
①当视线矢量平行Z轴时,有;2)平面多边形的外法矢量的计算
设物体位于右手坐标系中,多边形顶点按逆时针排列。当多边形为凸多边形时,该平面的外法矢量为多边形相邻两边矢量的叉积。
平面P1P3P4的外法矢量;3)形体的数据结构
形体的数据结构采用单链三表结构。对于四面体,该形体有四个点,分别用V1、V2、V3、V4表示;六条边,分别用E1、E2、E3、E4、E5、E6表示;四个表面,分别用F1、F2、F3、F4表示;而用B表示物体。;4)算法实现的一般步骤:
①根据表面的数据结构,取顶点数据,计算表面的外法
线矢量;
②计算外法线在投影方向上的分量的值;
③根据分量的值判断表面的可见性;
④当B0时,90°≤β≤180°,表面面向观察者可见。
⑤若表面可见画出该表面,否则处理下一个表面。;8.2凹多面体的隐藏线消除
;2.算法处理过程
1)先求出表面的外法线,计算其投影方向上的方向???弦值cosβ;;6)循环计算其他表面和当前表面的遮挡关系;
①提取表面的每一个边,判断和当前面的关系:
完全挡住、完全未被挡住或部分挡住;
②若完全挡住视为不可见边,作删除或改变线型处理;;③若完全不被挡住,视为可见边,绘制该边;
④若部分挡住,利用线段裁剪求出多边形之外的部分
线段:可见线段,绘制;
⑤对多边形之内的部分线段:不可见线段,作删除
或改变线型处理;;1.基本思路
对于屏幕上的每一个像素,记录位于该像素内最靠近观察者的景物面的深度值,同时相应记录该景物面的颜色(或灰度)的所有记录值,输出的图形。;2.算法步骤
1)开辟内存数组:ZB(m,n)和FB(m,n)
2)初始化数组:FORi=1,m
FORj=1,n
ZB(i,j)=机器允许最大值,FB(i,j)=背景色
3)循环计算每个像素点的深度值:
Forj=1,m
Fori=1,n
Fork=1,L//L:形体的表面数
①Zij=机器最大值
②判断(i,j)点是否在当前投影多边形k内,利用射线法
或弧长法判断。;③若(i,j)点在k内,求(i,j)点的深度值Zij
④进行深度值比较。
⑤若ZijZB(i,j),ZB(i,j)=Zij;3.深度值计算
在屏幕坐标系中任取像素点P0(i,j),作平行于Z轴的射线R,和表面F1、F2分别交于P1、P2点。;设表面方程:ax+by+cz+d=0(c≠0),
该表面对应像素点P(i,j)的深度值:
z=–(ai+bj+d)/c;1算法的基本思想
画家算法的基本思想和画家作画过程类似,具体是:
(1)先把屏幕设置成背景色。
(2)把物体各个面按其距离观察点的远近进行排序,距观察点远者放在表头,距观察点
文档评论(0)