- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 8.4.2 光线投射法 光线投射的体绘制算法是目前使用最广泛的一种体绘制方法,如图8.15所示,对于图像平面上的每一象素,从视点投射出一穿过该象素的视线,该视线穿过体数据空间,算法直接利用该视线上的采样值计算该象素的光强. 整个算法分为光线生成、光强计算与组合、图像显示三部分。 图8.15 光线投射法 设体数据中每一位于(i,j,k)的体素值为f(x)(x=(i,j,k)),位于视平面(u,v)处象素的光线为R(u,v),其强度值为C(u,v). 首先由f(x),根据光照明模型计算出对应的光强值C(x)和不透明度值a(x).沿光线R,进入图像空间与体数据包围盒相交,在两相交点之间设置一系列采样点S1,S2,…Sm。根据C(x)和a(x) ,通过再采样计算出对应的C(Si)和a(Si),将C(Si)和a(Si)沿光线组合在一起就是当前象素点处的光强度值,如图8.16所示过程. 图8.16 光线投射流程 根据光线的方向,组合可分为从后到前和从前到后两种组合方式。 设光线穿过体素前颜色和不透明度为Cin和Ain,穿过体 素后为Cout和Aout (见图8.17), 光线从后到前的组合为: Cout=Cin(1-Ain) + C(Si)* A(Si) 光线从前到后的组合为: Cout=Cin+C(Si) (1-Ain) 两种组合前者直接计算, 后者要计算Aout,但后者 可利用Aout优化累加过程, 故一般还是多采用后者. 图8.17 光线组合方式 光线投射体绘制算法: C(R)=0 a(R)=0 X1=First(R) 求出在对象空间中光线进入和离开的位置 X2=Last(R) Ul=Image(X1) 转换到图像空间中的位置 U2=Image(X2) 对所有在该对象空间的采样点S For S=U1 to U2 Do Sx=Object(S) 转换到对象空间他置 求出Sx处的不透明度值a(Sx) If a(Sx)>0 Then C(Sx)=采样点处的颜色(c*a) C(R)=C(R)十C(Sx)(1 - a(R)) a(R)=a(R)十a(Sx)(1-a(R)) End If End For 8.5 体单元投影法 体单元投影法是以对象空间为序的一种体绘制方法,它从对象空间的三维数据场出发,依次计算每个数据点对屏幕上各象素点的贡献,将同一平面和不同平面上各数据点对各象素点光亮度的贡献合成起来得到最后的图像,其过程如图8.20所示. . 图8.20 体单元投影 8.5.1 V-Buffer算法 该算法是基于正交网格点上计算单元的投影绘制方法.算法扫描整个对象空间,依次逐个处理每一单元,由视点和单元的相对位置来决定单元的扫描次序,为每一单元定义一个包围盒,用扫描线裁剪生成单元投影贡献的象素区域.对每条扫描线上的象素点计算出光照强度和不透明度,然后进行累加,可见性由不透明度所决定.该方法类似于消隐中的Z-Buffer算法,故称为V-Buffer算法。 (1) 扫描次序的决定 由于在V—Buffer中保存的是每一象素不透明度的累加值,后续单元对该象素的贡献受该累加不透明度的影响,因而单元扫描次序的决定是决定算法正确组合的基础. 单元的处理,由接近视点的平面开始,逐个平面处理,直至最远的平面.在每个平面内的单元处理次序是根据单元与视点距离,从最近的单元开始,然后处理相邻单元,这样就形成了一个类似同心圆式的扫描过程. 由于是正交网格单元,单元之间不会相互重叠,从而保证了上述处理次序的正确性,同时该算法也更易实现并行. 图8.21显示了算法单元的处理次序,在同一平面内由l-9决定了扫描次序,同一次序号的单元可并行处理. (2)单元的处理 在逐个单元的处理中,首先为每一单元决定一个包围盒.由该包围盒在图像平面上的投影,决定该单元投影的扫描线范围.对于包围盒内的每条扫描线,计算由扫描线所确定的扫描平面与单元的交多边形,该交多边形是一凸多边形,投影到扫描线上形成至多五段区间(见图8.22). (3)光亮度贡献的累加 对于与单元有交多边形的各条扫描线上的每一象素,要计算单元对它的光亮度贡献和不透明度的贡献,其中各象素点不透明度的值作为V-Buffer的内容保留在V-Buffer中.光亮度和不透明度的计算在每个象素的
您可能关注的文档
最近下载
- 电池及锂电池基础知识培训.pdf VIP
- 拆分合同协议.docx VIP
- 日剧剧本___ハケンの品格.doc VIP
- 劳动教育整理与收纳.pptx VIP
- 部编版2025 初中历史七上 第6课 战国时期的社会变革 课件(共28张PPT)(含音频+视频).pptx VIP
- (刘氏字辈派语寻宗资料第廿七辑.doc VIP
- 先锋sc-lx89-79-fxj-zhtw功放中文说明书.pdf VIP
- XX医生正高职称主任医师评审答辩材料PPT课件(完整框架).pptx VIP
- 教室整理与收纳过程中的创造性劳动实践.docx VIP
- 2024《小学劳动教育课程实施现状调查研究—以X小学为例》12000字.docx VIP
文档评论(0)