3). 实体造型
  早在60年代初,就提出了实体造型的概念,但由于当时理论研究和实践都不够成熟,实体造型技术发展缓慢。70年代初出现了简单的具有一定实用性的基于实体造型的CAD/CAM系统,实体造型在理论研究方面也相应取得了发展。如1973年,英国剑桥大学的布雷德(I.C. Braid)曾提出采用六种体素作为构造机械零件的积木块的方法,但仍然不能满足实体造型技术发展的需要。在实践中人们认识到,实体造型只用几何信息表示是不充分的,还需要表示形体之间相互关系、拓扑信息。到70年代后期,实体造型技术在理论、算法和应用方面逐渐成熟。进入80年代后,国内外不断推出实用的实体造型系统,在实体建模、实体机械零件设计、物性计算、三维形体的有限元分析、运动学分析、建筑物设计、空间布置、计算机辅助制造中的NC程序的生成和检验、部件装配、机器人、电影制片技术中的动画、电影特技镜头、景物模拟、医疗工程中的立体断面检查等方面得到广泛的应用。
  实体造型是以立方体、圆柱体、球体、锥体、环状体等多种基本体素为单位元素,通过集合运算(拼合或布尔运算),生成所需要的几何形体。这些形体具有完整的几何信息,是真实而唯一的三维物体。所以,实体造型包括两部分内容:即体素定义和描述,以及体素之间的布尔运算(并、交、差)。布尔运算是构造复杂实体的有效工具。目前常用的实体表示方法主要有:边界表示法(BRep)、构造实体几何法(CSG)和扫描法。
  (1) 三维形体在计算机内的常用表示法
  对于三维几何元素或简称三维形体,最常用的表示法有两种:CSG和BRep。
 ① CSG表示法:先定义一些形状比较简单的常用体素,如方块、圆柱、圆锥、球、棱柱等。然后用集合运算并、交、差把体素修改成复杂形状的形体。早期的CSG模型仅使用代数方程及半空间的概念,体素只支持多面体与二次曲面体,而不支持表面含有自由曲面的实体。整个模型是棵树结构,最终形体的表面交线与有效区域没有显式给出,不能直接用于NC加工与有限元分析等后继处理。
 ② BRep表示法:用点、边、面、环以及它们之间相互的邻接关系定义三维实体,形体表面、边界线、交线等都显式给出。但是生成个别形体的过程相当复杂、不直观,不可能由用户直接操作。它的优点是能支持所有类型的曲面作为形体表面。能直接支持NC加工与有限元分析等,故其优缺点恰与CSG模型相反。后来,人们转向使用CSG与BRep的混合模型。
 ③ CSG与BRep的混合模型表示法:用CSG作为高层次抽象的数据模型,用BRep作为低层次的具体表示形式。CSG树的叶子结点除了存放传统的体素的参数定义,还存放该体素的BRep表示。CSG树的中间结点表示它的各子树的运算结果。用这样的混合模型对用户来说十分直观明了,可以直接支持基于特征的参数化造型功能,而对于形体加工,分析所需要的边界、交线、表面不仅可显式表示,且能够由低层的BRep直接提供。
  (2) 三维形体的集合运算
  通常一个形体是由两个或两个以上较简单的形体(称之为体素)经过集合运算得到的集合运算子<op>包括并(è)、交(?)、差(-)。设A和B是两个用BRep表示描述的维数一致的多面体,集合运算结果形体C=A<op>B的步骤可简介如下:
 ① 确定集合运算两形体之间的关系:形体边界表示BRep结构中的面、边、点之间的基本分类关系分别是"点在面上"、"点在边上"、"两点重合"、"边在面上"、"两边共线"、"两个多边形共面"等六种关系。先用数值计算确定"点在面上"的关系,其余五种关系可以根据"点在面上"关系推导出来。当这些关系发生冲突时,就用推理的方法解决冲突。
 ② 进行边、体分类:对A形体上的每一条边,确定对B形体的分类关系(A在B形体内、外、上面、相交等);同样对B形体上的每一条边,确定对A形体的分类关系。
 ③ 计算多边形的交线:对于A形体上的多边形PA和B形体上的每一个多边形PB,计算它们的交线。
 ④ 构造新形体C表面上的边:对于A形体上和B形体上的每一个多边形PA、PB,根据集合运算的算子收集多边形PA的边与另一个多面体表面多边形PB的交线以生成新形体C表面的边,如果多边形PA上有边被收集到新形体C的表面,则PA所有的平面将成为新形体C表面上的一个平面,多边形PA的一部分或全部则成为新形体C的一个或多个多边型。如果定义了两个形体A和B的完整边界,那么形体C的完整边界就是A和B边界各部分的总和。
 ⑤ 构造多边形的面:对新形体C上的每一个面,将其边排序构成多边形面环。
 ⑥ 合法性检查:检查形体C的BRep表示的合法性。