第六讲:实体造型技术
- 格式:pdf
- 大小:1012.91 KB
- 文档页数:70
实体造型的概念尽管早在20 世纪60 年代初就已提出,但直到20 世纪70 年代初才出现简单有一定实用意义的实体造型系统。
1973 年,英国剑桥大学的1 . C . Braid 曾提出采用6 种基本体素作为构造机械零件的积木块.后来的实践又使人们认识到,对于几何模型只用几何信息表示是不充分的,还需要表示形体之间相互关系的拓扑信息。
到20 世纪70 年代后期,实体造型技术在理论/算法和应用方面逐渐成熟。
但因为涉及到大量的面与面之间的交贯运算,难免出现奇异情况。
有时,计算精度的有限带来的几何数据的误差还会造成拓扑关系的紊乱,从而使布尔运算不能进行下去或者产生错误的结果。
因此,如何进一步提高实体造型系统的可靠性,仍然是一个有待解决的问题。
采用推理技术,从整体上判断拓扑关系的一致性并加以调整,无疑有助于这一问题的解决。
实体造型包括两部分内容:即体素(长方体、圆柱体、球体、锥体等)的定义和描述,以及体素之间的集合运算(并、交、差)。
目前常用的实体造型方法有:1 )边界表示法(Boundary representation , B 一rep ) ;2 )构造实体几何法(Constructive Solid Geometry , CSG ) ;3 )扫描法(Sweeping ) ;4 )分解表示法(oecomposition representation , D 一rep )。
其实,不同的造型算法并不控制实际的形体,而是控制表示形休的数据结构。
4 . 3 . 1 边界衰示法边界表示法是以物体边界为基础的定义和描述几何形体的方法,并能给出完整的、显式的界面描述,如图4 一30 所示。
在这里,每个物体都由有限个面构成,每个面(平面或曲面)可以由有限条边围成的有限个封闭域定义。
因此用B 一rep 描述实体,其表面必须满足一定的条件:封闭、有向、不自交、有限和相连接,并能区分实体边界内、外、上的点。
边界表示法在数据结构上可用体、面、环、边、顶点五个层次来描述:1 )体实体包含的基本体素名称以及它们的相互定位和集合运算关系。
2.1 实体造型简介2.1.1 实体造型简介实体造型出现于20世纪60年代初期,但由于当时理论研究和实践都不够成熟,实体造型技术发展缓慢。
20世纪70年代初出现了简单的具有一定实用性的基于实体造型的CAD/CAM系统,实体造型在理论研究方面也相应取得了发展。
如1973年,英国剑桥大学的布雷德(I.C.Braid)曾提出采用六种体素作为构造机械零件的积木块的方法,但仍然不能满足实体造型技术发展的需要。
在实践中人们认识到,实体造型只用几何信息表示是不充分的,还需要表示形体之间相互关系、拓扑信息。
到20世纪70年代后期,实体造型技术在理论、算法和应用方面逐渐成熟。
进入20世纪80年代后,国内外不断推出实用的实体造型系统,在实体建模、实体机械零件设计、物性计算、三维形体的有限元分析、运动学分析、建筑物设计、空间布置、计算机辅助制造中的数控程序的生成和检验、部件装配、机器人、电影制片技术中的动画、电影特技镜头、景物模拟、医疗工程中的立体断面检查等方面得到广泛的应用。
现在的三维实体造型技术是指描述几何模型的形状和属性的信息,并保存于计算机内,由计算机生成具有真实感的、可视的三维图形技术。
三维实体造型可以使零件模型更加直观,便于生产和制造。
因此,在工程设计和绘图过程中,三维实体建模应用的十分广泛。
实体模型具有线框模型和表面模型所没有的体的特征,其内部是实心的,所以用户可以对它进行各种编辑操作,如穿孔、切割、倒角和布尔运算,也可以分析其质量、体积、重心等物理特性。
而且实体模型能为一些工程应用,如数控加工、有限元分析等提供数据。
实体模型通常也可以线框模型或表面模型的方式进行显示,用户可以对它进行消隐、着色或渲染处理。
2.1.2 实体造型方法在实体造型的应用软件中,使用的几何实体造型的方法一般有扫描表示法(Sweeping)、构造实体几何法(Constructive Solid Geometry〕和边界表示法(Boundary representation)三种。
实体造型技术的研究实体造型技术的研究可以追到溯到六十年代初期,不过,直到六十年代后半期,有关实体造型的报道仍然很少。
七十年代初期,出现了一些实体造型系统,如英国剑桥大学的BUILD-1系统,德国柏林工业大学的COMPAC系统,日本北海道大学的TIPS-1系统和美国罗切斯特大学的PADL-1、PADL-2系统等。
这些早期的实体造型系统有一个共同的特点:不支持精确的曲面表示,用多面体表示形体。
多面体模型的优点是数据结构相对简单,集合运算、明暗图的生成和显示速度快。
但是,同一系统中存在两种表示:精确的曲面表示和近似的多面体逼近,违背了几何定义唯一性原则;而且,曲面形体使用多面体模型只是近似表示,存在误差,若要提高表示精度时,就需要增加离散平面片的数量,庞大数据量影响计算速度和计算机的存储管理,也是难以接受的。
显然,要为了解决这个问题,就需要在几何造型系统中采用精确的形体表示模型。
六、七十年代,雕塑曲面的研究取得了很大的进展,Coons曲面、Bezier曲线和曲面、B样条曲线和曲面等设计方法相继提出,并在汽车、航空和造船等行业得到了广泛的应用。
曲面造型系统由于缺乏面片的连接关系,不仅使曲面的交互修改非常复杂,而且也难于构造封闭的形体。
实体造型系统则由于不能有效地处理复杂曲面,也使其几何造型的覆盖域受到了很大的限制。
自然,如何构造能够精确表示形体的几何造型系统,成了人们研究的目标。
1978年,英国Shape Data公司推出了实体造型系统Romulus,并首次引入了精确的二次曲面,二次曲面的表示采用了代数方程的形式。
八十年代末,出现了NURBS曲线曲面设计方法,已有的曲线曲面表示方法,如Bezier方法、B样条方法等,可以用NURBS方法统一表示,且能精确表示二次曲线曲面。
由于NURBS的强大的表示能力,能够精确表示形体的几何造型系统,纷纷采用了NURBS方法,国际标准化组织也已将NURBS作为定义工业产品形状的唯一数学方法。
图形的实体造型方法几何造型技术造型技术:研究如何在计算机中建立恰当的模型表示这些物体的技术。
真实世界中存在着千姿百态的物体; 它是计算机图形学的重要研究内容之一。
它是由于计算机辅助设计和制造的需要而发展起来的,现在已广泛应用 于各种造型系统之中。
其中,实体造型技术关注表示实体的信息的完备性和可操作性,实体的定义数学中的点、线、面是其所代表的真实世界中对象的一种抽象,它们之间 存在着一定的差别。
例: 数学中平面是二维的,没有厚度,体积为零; 在真实世界中,一张纸无论有多么薄,它也是一个三维的体,具 有一定的体积。
这种差距造成了在计算机中以数学方法描述的形体可能是无效,即在 真实世界中不可能存在。
• 如右图的立方体的边上悬挂着一张面,立方体是三 维物体,而平面是二维对象,它们合在一起就不是 一个有意义的物体。
通常,实体造型中必须保证物 体的有效性。
现实物体的性质满足如下性质的物体称为有效物体或实体。
具有一定形状(流体不是实体造型技术描述的对象)。
具有确定的封闭边界(表面)。
是一个内部连通的三维点集。
如果该物体可分成独立的几个部分,不妨将其看作多个物体。
这条性质排除了下图中的形体作为有效物体的情况, 其中:两个立方体仅以一条棱相接,内部区域是不连通的。
占据有限的空间,即体积有限。
经过任意的运算(如切割、粘合)之后,仍然是有效的物体。
实体的点集拓扑表示从点集拓扑的角度可给出实体的简洁定义。
三维物体可看作一个点集,它由内点与边界点共同组成。
内点是指点集中具有完全包含于该点集的充分小邻域的一些点。
边界点就是指那些不具备此性质的点集中的点。
定义点集的正则运算r: r·A=c·i·A。
其中:i为取内点运算,c取闭包运算,A为一个点集,那么, i·A即为A的全体内点组成的集合,称为A的内部,它是一个开集。
c·i·A 为 A的内部闭包,是 i·A 与其边界点的并集,它本身是一个闭 集。
实体的正则运算过程正则运算即为:先对物体取内点,再取闭包的运算。
下图示出了正则运算的过程:对图(a)中的物体做作取内点运算得到图(b),该运算去掉了物体所有的边 界点,余下的即为物体的内部; 对图(b)中物体的内部作取闭包运算,得到其闭包图(c),它是一个正则点 集。
由上述过程不难看出: 正则运算的作用是去除与物体维数不一致的悬挂 部分或孤立部分: 如:三维物体的悬挂面、线,二维物体的悬挂线等。
(a)带有悬挂边、孤立边 和孤立点的二维物体(b)物体的内部(c)物体内部的闭包实体的正则点集定义r ·A 称为A的正则点集, 称A为正则点集,如果它满足r·A=A。
下图中由两个立方体组成的物体 问题:正则点集是实体? 这样的物体在真实世界中是不存在的。
这个物体可分成独立的几个部分,不妨将其看作多个物体。
实体的二维流形定义二维流形是指这样一些面: 其上任一点都存在一个充分小的邻域,该邻域与平面上的圆盘是同构的, (在该邻域与圆盘之间存在连续的1-1映射)任何客观存在的物体,如立方体,其表面上任一点都存在与圆盘 同构的邻域。
引入二维流形概念的目的是为排除正则点集中类似于由两个立方体组成的 物体。
其上的点不存在这样的邻域。
实体的定义(可计算条件): 对于一个占据有限空间的正则点集,如果其表面是二维流形,则该正 则点集为实体(有效物体)。
这个描述中的条件是在计算机中可检测的,对衡量一个模型表示 是否为实体非常有用。
正则集合运算定义正则集合运算功用:通过对简单实体做适当运算来构造复 杂实体。
实体可看作点集,对实体进行的运算主要是集合运算 。
对两个实体做普通的集合运算并不能保证其结果仍是 一个实体(右图)。
A op* B= r · (A op B),两物体的集合运算 正则集合运算op*: op是普通的集合运算, 即:∩、∪和- r为正则运算,op*=∩*、∪*和-*普通集 合运算正则集 合运算分别称为正则交、正则并和正则差。
正则集合运算过程: 先对A、B做普通集合运算,再做正则运算。
正则集合运算原理任一实体S可用其边界bS和其内部iS来表示,即:S=bS∪iS。
由实体定义可知: 边界 bS 是封闭的,它将整个三维空间分成三个区域:S的内部iS, 其自身 bS与S的外部eS。
边界与实体是一一对应的。
实体A和B正则集合运算A op* B,转化为求其边界b(A op* B) 实体A的边界bA按其位于实体B的内部iB、边界bB、外部eB可分别表示为 :bA∩iB, bA∩bB, bA∩eB。
即:bA=((bA∩iB)∪(bA∩bB)∪(bA∩eB))。
同理,实体B的边界bB可表示为: bB=((bB∩iA)∪(bB∩bA)∪(bB∩eA))。
bA∩bB=bB∩bA是A与B的公共边界,它可分成两部分: (bA∩bB)同侧、 (bA∩bB)异侧。
(bA∩bB)同侧由这样的边界构成:A与B位于这些边界的同一侧; (bA∩bB)异侧的含义相反。
正则集合运算计算对于A∩* B,由交的定义可知: A、B两物体的边界位于对方内部的部分, 即:bA∩iB和bB∩iA是b(A∩* B)的组成部分; A、B两物体的边界位于对方外部的部分, 即:bA∩eB和bB∩eA不是b(A∩* B)的组成部分; 对于A、B的重合边界有:(bA∩bB)同侧∈b(A∩* B), b(A∩* B)=(bA∩iB)∪(bB∩iA)∪(bA∩bB)同侧。
(bA∩bB)异侧则不属于b(A∩* B)。
由此得到:同理,可得到A、B正则并和差的边界表达式: b(A∪* B)=(bA∩eB)∪(bB∩eA)∪(bA∩bB)同侧。
b(A -* B)=(bA∩eB)∪(bB∩iA)∪(bA∩bB)异侧。
(bA∩bB) bB)异侧 bB∩iA P4 P3 P2 P1 (bA∩bB) bB)同侧 (b). A∪*B的边界 (c). AA-*B的边界 bA∩iB bB∩eA bB∩eA bA∩eB bA∩eB bB∩iA (bA∩bB) bB)异侧(bA∩bB) bB)同侧 (a). A∩*B的边界几何模型的定义图形对象的描述需要大量图形信息和非图形信息, 对象及构成它的点、线、面的位置及其相互间关系和几何尺寸等都 是图形信息; 表示这些对象图形的线型、颜色、亮度以及供分析和模拟用的质量 、比重和体积等数据是有关对象的非图形信息。
• 图形信息常从拓扑信息和几何信息两方面 考虑。
– 几何信息:指形体在欧氏空间中的位 置和大小; – 拓扑信息:是形体各分量的数目及其 相互之间的连接关系。
几何元素定义:点点是0维几何元素。
在形体定义中一般不允许存在孤立点。
一维空间中的点用一元组{t}表示; 二维空间中的点用二元组{x, y}或{x(t), y(t)}表示; 三维空间中的点用三元组{x, y, z}或{x(t), y(t), z (t)}表示。
n维空间中的点在齐次坐标系下用n+1维表示。
自由曲线、曲面或其他形体均可用有序的点集表示。
计算机存储、管理、输出形体的实质就是对点集及其连接关系的处理。
①控制点。
用来确定曲线和曲面的位置与形状,相应曲线和曲面不一定经 过的点; ②型值点。
用来确定曲线和曲面的位置与形状,相应曲线和曲面一定经过 的点; ③插值点:为提高曲线和曲面的输出精度,在型值点之间插入的一系列点 。
点是几何造型中的最基本元素, 在自由曲线和曲面的描述中常用三种类型的点,即: 几何元素定义:边和面边是一维几何元素 是两个邻面(正则形体)或多个邻面(非正则形体)的交界。
直线边由其端点(起点和终点)定界; 曲线边由一系列型值点或控制点表示,也可用显式、隐式方程表示。
面是二维几何元素 是形体上一个有限、非零的区域,由一个外环和若干个内环界定其范围。
一个面可以无内环,但必须有一个且只有一个外环。
若一个面的外法矢向外,此面为正向面;反之,为反向面。
面有方向性,一般用其外法矢方向作为该面的正向。
区分正向面和反向面在面面求交、交线分类、真实图形显示等方面都很 重要。
几何造型中常分平面、二次面、双三次参数曲面等形式。
几何元素定义:环环: 有序、有向边(直线或曲线段)组成的(面的)封闭边界。
环中的边不能相交,相邻两条边共享一个端点。
环有内外之分: 确定面的最大外边界的环称之为外环,通常其边按逆时针方向排序。
把确定面中内孔或凸台边界的环称之为内环,其边相应外环排序方向 相反,通常按顺时针方向排序。
在面上沿一个环前进,其左侧总在面内,右侧总在面外。
外环内环几何元素定义:体体是三维几何元素 由封闭表面围成的空间; 是欧氏空间中非空、有界的封闭子集,其边界是有限面的并集。
常用的体素采用三种定义形式: 从实际形体中选择出来, 可用一些确定的尺寸参数控制其最终位置和形状的一组单元,如长 方体、圆柱体、圆锥体、圆环体、球体等; 由参数定义的一条(或一组)截面轮廓线沿一条(或一组)空间参数曲 线作扫描运动而产生的形体; 用代数半空间定义的形体。
几何分量间的关系对于不同的用户,感兴趣的几何分量并不相同。
笔划式输入输出设备中以描述形状的轮廓线为主,形体顶点的几何信息较为 实用; 光栅扫描型输入输出设备中主要处理具有明暗度和阴影的图,形体的面几何 信息较为实用。
只用几何信息来表示形体还不充分,常常还会出现形体表示的二义性 形体的表示除了几何信息外,还应提供几何分量之间的连接关系,即拓 扑关系。
f1∩f2∩f3 v1∪v2∪v3 点v e1∩e2 v1∪v2f1∩f2 面f e1∪e2 形体几何分量间的相互关系 边e拓扑信息的形式拓扑信息指的是顶点、边和面之间的连接关系。
多面体的拓扑关系可用九种不同的形式描述。
v v v e v e e f v→{f} 面相邻性 f e f e→{f} 面边相邻性 f f v f→{v} 面点包含性 f→{e} 面边包含性 f→{f} 面相邻性 f f fv v→{v} 顶点相邻性 v e vv→{e} 点边相邻性 e e e e ee→{v} 点边包含性 v f v ve→{e} 边相邻性 e e f e e拓扑信息的应用不同的用户对不同的拓扑关系感兴趣。
对画线的图形系统来说,知道: v→{v}, e→{v}, f→{v}这些拓扑关系 就可知道从顶点如何连接成边、面等几何单元; 在消隐线、面的算法中,则希望知道面的相邻性: 即:f→{f}; 在形体的拼合运算中,则希望知道顶点的邻接面: 即:v→{f}。