资源预览内容
第1页 / 共96页
第2页 / 共96页
第3页 / 共96页
第4页 / 共96页
第5页 / 共96页
第6页 / 共96页
第7页 / 共96页
第8页 / 共96页
第9页 / 共96页
第10页 / 共96页
亲,该文档总共96页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
3.5形体在计算机内的表示,几何造型 形体表示 边界表示模型,清华大学 计算机图形学基础,3.5.1 引言,计算机中表示形体,通常用线框、表面和实体三种模型。 几何造型历史:早期的线框表示 实体造型与曲面造型70 独立发展 到 互相溶合 NURBS 边界表示,清华大学 计算机图形学基础,正则形体,对于任一形体,如果它是3维欧氏空间中非空、有界的封闭子集,且其边界是二维流形(即该形体是连通的),我们称该形体为正则形体,否则称为非正则形体。,清华大学 计算机图形学基础,一些非正则形体的实例,清华大学 计算机图形学基础,集合运算(并、交、差)是构造形体的基本方法。正则形体经过集合运算后,可能会产生悬边、悬面等低于三维的形体。 Requicha在引入正则形体概念的同时,还定义了正则集合运算的概念。正则集合运算保证集合运算的结果仍是一个正则形体,即丢弃悬边、悬面等。,清华大学 计算机图形学基础,集合运算举列,清华大学 计算机图形学基础,为了能够处理非正则形体,产生了非正则造型技术。 九十年代以来,基于约束的参数化、变量化造型和支持线框、曲面、实体统一表示的非正则形体造型技术已成为几何造型技术的主流。,清华大学 计算机图形学基础,3.5.2 形体表示模型,在实体模型的表示中,基本上可以分为分解表示、构造表示和边界表示三大类。 1、分解表示 将形体按某种规则分解为小的更易于描述的部分,每一小部分又可分为更小的部分,这种分解过程直至每一小部分都能够直接描述为止。 (a)将形体空间细分为小的立方体单元。这种表示方法的优点是简单,容易实现形体的交、并、差计算,但是占用的存储量太大,物体的边界面没有显式的解析表达式,不便于运算。,清华大学 计算机图形学基础,(b)八叉树法表示形体.首先对形体定义一个外接立方体,再把它分解成八个子立方体,并对立方体依次编号为0,1,2,7。如果子立方体单元已经一致,即为满(该立方体充满形体)或为空(没有形体在其中),则该子立方体可停止分解;否则,需要对该立方体作进一步分解,再一分为八个子立方体。在八叉树中,非叶结点的每个结点都有八个分支。 优点主要是: (1)形体表示的数据结构简单。,清华大学 计算机图形学基础,(2)简化了形体的集合运算。只需同时遍历参加集合运算的两形体相应的八叉树,无需进行复杂的求交运算。 (3)简化了隐藏线(或面)的消除,因为在八叉树表示中,形体上各元素已按空间位置排成了一定的顺序。 (4)分析算法适合于并行处理。 八叉树表示的缺点:占用的存储多,只能近似表示形体,以及不易获取形体的边界信息等。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,2构造表示。通常有扫描表示、构造实体几何表示和特征表示三种。 (a)扫描表示。基于一个基体(一般是一个封闭的平面轮廓)沿某一路径运动而产生形体。 扫描是生成三维形体的有效方法 用扫描变换产生的形体可能出现维数不一致的问题。 扫描方法不能直接获取形体的边界信息,表示形体的覆盖域非常有限。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,清华大学 计算机图形学基础,(b)构造实体几何表示(CSG).通过对体素定义运算而得到新的形体的一种表示方法。体素可以是立方体、圆柱、圆锥等,也可以是半空间,其运算为变换或正则集合运算并、交、差。 CSG表示可以看成是一棵有序的二叉树。 其终端节点或是体素、或是形体变换参数。 非终端结点或是正则的集合运算,或是变换(平移和/或旋转)操作,这种运算或变换只对其紧接着的子结点(子形体)起作用。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,CSG树是无二义性的,但不是唯一的. CSG表示的优点: 数据结构比较简单,数据量比较小,内部数据的管理比较容易; CSG表示可方便地转换成边界(Brep)表示; CSG方法表示的形体的形状,比较容易修改。 CSG表示的缺点: 对形体的表示受体素的种类和对体素操作的种类的限制,也就是说,CSG方法表示形体的覆盖域有较大的局限性。,清华大学 计算机图形学基础,对形体的局部操作不易实现,例如,不能对基本体素的交线倒圆角; 由于形体的边界几何元素(点、边、面)是隐含地表示在CSG中,故显示与绘制CSG表示的形体需要较长的时间。,清华大学 计算机图形学基础,(c)特征表示 从应用层来定义形体,因而可以较好的表达设计者的意图。从功能上可分为形状、精度、材料和技术特征。 特征是面向应用、面向用户的。特征模型的表示仍然要通过传统的几何造型系统来实现。不同的应用领域,具有不同的应用特征。,清华大学 计算机图形学基础,在几何造型系统中,根据特征的参数我们并不能直接得到特征的几何元素信息,而在对特征及在特征之间进行操作时需要这些信息。 特征方法表示形体的覆盖域受限于特征的种类。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,构造表示的特点: 构造表示通常具有不便于直接获取形体几何元素的信息、覆盖域有限等缺点, 但是,便于用户输入形体,在CAD/CAM系统中,通常作为辅助表示方法。,清华大学 计算机图形学基础,3边界表示(BR表示或BRep表示) 按照体面环边点的层次,详细记录了构成形体的所有几何元素的几何信息及其相互连接的拓扑关系。 边界表示的一个重要特点是在该表示法中,描述形体的信息包括几何信息(Geometry)和拓扑信息(Topology)两个方面。 拓扑信息描述形体上的顶点、边、面的连接关系,拓扑信息形成物体边界表示的“骨架”。 形体的几何信息犹如附着在“骨架”上的肌肉。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,Brep表示的优点是: 表示形体的点、边、面等几何元素是显式表示的,使得绘制Brep表示的形体的速度较快,而且比较容易确定几何元素间的连接关系; 容易支持对物体的各种局部操作,比如进行倒角。 便于在数据结构上附加各种非几何信息,如精度、表面粗糙度等。,清华大学 计算机图形学基础,Brep表示的缺点是: 数据结构复杂,需要大量的存储空间,维护内部数据结构的程序比较复杂; Brep表示不一定对应一个有效形体,通常运用欧拉操作来保证Brep表示形体的有效性、正则性等。 Brep表示覆盖域大,原则上能表示所有的形体,而且易于支持形体的特征表示等,Brep表示已成为当前CAD/CAM系统的主要表示方法。,清华大学 计算机图形学基础,CSG 与边界表示成为两大主流方法 80 ACM Solid modeling 欧洲CSG会议 边界表示 一统天下 欧洲CSG会议 亚州GMP,清华大学 计算机图形学基础,3.5.3 形体的边界表示模型,3.5.3.1 边界表示的基本实体 边界模型表达形体的基本拓扑实体包括: 1. 顶点 2. 边。边有方向,它由起始顶点和终止顶点来界定。边的形状(Curve)由边的几何信息来表示,可以是直线或曲线,曲线边可用一系列控制点或型值点来描述,也可用显式、隐式或参数方程来描述。,清华大学 计算机图形学基础,3. 环。环(Loop)是有序、有向边(Edge)组成的封闭边界。环有方向、内外之分,外环边通常按逆时针方向排序,内环边通常按顺时针方向排序。 4.面。面(Face)由一个外环和若干个内环(可以没有内环)来表示,内环完全在外环之内。 若一个面的外法矢向外,称为正向面;反之,称为反向面。,清华大学 计算机图形学基础,面的形状可以是平面或曲面。平面可用平面方程来描述,曲面可用控制多边形或型值点来描述,也可用曲面方程(隐式、显式或参数形式)来描述。对于参数曲面,通常在其二维参数域上定义环,这样就可由一些二维的有向边来表示环,集合运算中对面的分割也可在二维参数域上进行。 5.体。体(Body)是面的并集。,清华大学 计算机图形学基础,3.5.3.2 边界表示的数据结构,翼边数据结构:在1972年,由美国斯坦福大学Baumgart作为多面体的表示模式提出。 它用指针记录了每一边的两个邻面(即左外环和右外环)、两个顶点、两侧各自相邻的两个邻边(即左上边、左下边、右上边和右下边),用这一数据结构表示多面体模型是完备的,但它不能表示带有精确曲面边界的实体。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,辐射边:为了表示非正则形体,1986年,Weiler提出了辐射边(Radial Edge)数据结构。 辐射边结构的形体模型由几何信息和拓扑信息两部分组成。 几何信息有面(face)、环(loop)、边(edge)和点(vertex) 拓扑信息有模型(model)、区域(region)、外壳(shell)、面引用(face use)、环引用(loop use)、边引用(edge use)和点引用(vertex use)。,清华大学 计算机图形学基础,点是三维空间的一个位置 边可以是直线边或曲线边,边的端点可以重合。 环是由首尾相接的一些边组成,而且最后一条边的终点与第一条边的起点重合;环也可以是一个孤立点。外壳是一些点、边、环、面的集合; 外壳是一些点、边、环、面的集合。 区域由一组外壳组成。 模型由区域组成。,清华大学 计算机图形学基础,清华大学 计算机图形学基础,清华大学开发的几何造型系统GEMS5.0中,采用的数据结构如图,清华大学 计算机图形学基础,欧拉操作 选读 集合运算 选读,清华大学 计算机图形学基础,3.5.3.3 欧拉操作,对于任意的简单多面体,其面(f)、边(e)、顶点(v)的数目满足 欧拉公式 v - e + f = 2 对于任意的正则形体,引入形体的其它几个参数:形体所有面上的内孔总数(r)、穿透形体的孔洞数(h)和形体非连通部分总数(s),则形体满足公式: v - e + f = 2(s-h) + r,清华大学 计算机图形学基础,修改过程中保证各几何元素的数目保持这个关系式不变,这一套操作就是欧拉操作。 最为常用的几种欧拉操作有: (1)mvsf(v,f),生成含有一个点的面,并且构成一个新的体。 (2)kvsf,删除一个体,该体仅含有一个点的面。 (3)mev(v1,v2,e),生成一个新的点v2,连接该点到已有的点v1,构成一条新的边。 (4)kev(e,v),删除一条边e和该边的一个端点v。 (5)mef(v1,v2,f1,f2,e),连接面f1上的两个点v1、v2,生成一条新的边e,并产生一个新的面。,清华大学 计算机图形学基础,(6)kef(e),删除一条边e和该边的一个邻面f。 (7)kemr(e),删除一条边e,生成该边某一邻面上的一新的内环。 (8)mekr(v1,v2,e),连接两个点v1、v2,生成一条新的边e,并删除掉v1和v2所在面上的一个内环。 (9)kfmrh(f1,f2),删除与面f1相接触的一个面f2,生成面f1上的一个内环,并形成体上的一个通孔。 (10)mfkrh(f1,f2),删除面f1上的一个内环,生成一个新的面f2,由此也删除了体上的一个通孔。,清华大学 计算机图形学基础,为了方便对形体的修改,还定义了两个辅助的操作: 公共端点。 (11)semv(e1,v,e2),将边e1分割成两段,生成一个新的点v和一条新的边e2。 (12)jekv(e1,e2),合并两条相邻的边e1、e
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号