欢迎来到天天文库
浏览记录
ID:14783585
大小:51.00 KB
页数:18页
时间:2018-07-30
《三维图形的消隐算法分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、三维图形的消隐算法分析三维图形的消隐算法分析----摘要造型是计算机三维图形处理的基础,而消隐则是三维造型的关键。本文剖析了当前在CAD三维图形处理中最主要的8种物体空间消隐算法和4种图象空间消隐算法。----关键词造型、消隐、物体空间法、图象空间法----分类号----造型(modeling)是计算机三维图形处理的基础,而消除隐藏面(hiddensurface,简称消隐)则是三维造型的关键。所谓消隐就是不画出即隐藏从当前观察点看不见的三维模型表面。消隐算法的核心就是判断三维模型的表面是否可见。----抽象来看,一种消隐算法可以看作一个五元组,即HA=(
2、I,O,D,P,S)----其中,I为要进行消隐处理的三维对象的集合;----O为经过消隐处理的二维对象的集合;----D为进行消隐处理时所采用的数据结构;----P为进行消隐处理所需基本操作过程的集合,主要包括分类、排序三维坐标变换透视投影变换基本图形元素间的求交计算两个区域重叠判断点与区域的包含测试面的朝向测试----S为消隐策略,即规定P中各基本操作过程被采用的先后次序。----因此,设计消隐算法时应考虑上述五个要素及它们之间的相互关系。----在计算机图形学中,为了简化算法,一般是利用多面体去逼近曲面体,因此多面体的消隐算法是曲面体的基础。本文的
3、消隐算法讨论主要是基于多面体的消隐问题,对曲面体进行多次多面体近似,对每一多面体运用多面体消隐算法就能实现曲面体的消隐。----基于B-rep模型(BoundaryRepresentativeModel)和CSG模型(ConstructiveSolidGeometryModel)的三维造型消隐算法可以分为两大类,即物体空间法和图象空间法。物体空间法利用三维环境信息或三维视图(主要使用三维观察坐标,有时也使用三维世界坐标)来消除隐藏面,即根据空间中各物体三维模型的几何关系,来判断哪些表面可见,哪些表面不可见。图象空间法基于物体三维模型的二维显示图形(使用二
4、维显示坐标)来确定物体或表面与观察点的远近关系,从而判断哪些表面遮挡了其它表面。----本文将分析当前在CAD三维图形处理中最主要的12中消隐算法,其中8种属于物体空间法,4种属于图象空间法。在实际处理中,由于物体表面形态的复杂性和提高消隐处理的效率,通常都是结合使用多种消隐算法来完成物体的消隐处理的。----一、物体空间法----物体空间法是在三维坐标系中,通过分析物体模型间的几何关系,如物体的几何位置、与观察点的相对位置等,来进行隐藏面判断的消隐算法。世界坐标系是描述物体的原始坐标系,物体的世界坐标描述了物体的基本形状。为了更好地观察和描述物体,经常
5、需要对其世界坐标进行平移和旋转,而得到物体的观察坐标。物体的观察坐标能得到描述物体的更好视角,所以物体空间法通常都是在观察坐标系中进行的。观察坐标系的原点一般即是观察点。----物体空间法消隐包括两个基本步骤,即三维坐标变换和选取适当的隐藏面判断算法。----一)三维坐标变换----选择合适的观察坐标系不但可以更好地描述物体,而且可以大大简化和降低消隐算法的运算。因此,利用物体空间法进行消隐的第一步往往是将物体所处的坐标系转换为适当的观察坐标系。这需要对物体进行三维旋转和平移变换。----设物体顶点的原始坐标为(x,y,z),变化后的观察坐标为(x*,y
6、*,z*),则----1.旋转变换物体绕Y轴旋转的角度α的三维旋转变换公式为[x*y*z*1]=[xyz][cosαsinα00-sinαcosα0000100001]物体绕Z轴旋转的角度β的三维旋转变换公式为[x*y*z*1]=[xyz][cosβ0-sinβ00100sinβ0cosβ00001]物体绕X轴旋转的角度γ的三维旋转变换公式为[x*y*z*1]=[xyz][10000corγsinγ00-sinγcosγ00001]将上述表达式展开后可得如下公式{x'=cosα×x-sinα×z;y'=cosβ×y-sinβ×x';z'=sinα×x+c
7、osα×z;x*=cosβ×x'+sinβ×y;y*=sinγ×z'+cosγ×y';z*=cosγ×z'-sinγ×y';----其中,x'、y'和z'是运算中间变量。----2.平移变换----三维平移变换公式如下[x*y*z*1]=[xyz1][100001000010ΔxΔyΔz1]----展开后即得[x*=x+Δxy*=y+Δyz*=z+Δz----其中Δx、Δy、Δz分别为物体沿X、Y、Z轴的平移量。----二)消隐算法----常用的物体空间消隐算法包括平面公式法、背面消除法、径向预排序法、径向排序法、隔离平面法、深度排序法、光线跟踪法和分解
8、法。其中前四种算法最常用,它们的基础都是背面消隐原理。所谓背面消隐原理,即是相对
此文档下载收益归作者所有