第6章三维几何造型
无论是形体的表示,还是新形体的生成都与其几何 信息和拓扑信息有关。只有几何信息没有拓扑信息是不 能构成图形的。这两方面的信息如何在计算机中存储和 使用,达到既节省计算机的空间资源和时间资源,又能 有效地进行各种操作运算,一般是通过研究图形的数据 结构来解决。
6.1.2 形体的存储模型
三维形体在计算机内的3种存储模式决定了形体的3 种存储模型:线框模型、表面模型和实体模型。
对于一个几何造型系统不可能同时采用上述五种表示, 也不可能只采用一种表示,一般根据应用的要求和计算机 条件采用某几种表示的混合方式。
例如,70年代初,美国Rochester大学推出了以CSG 表示为基础的PADL-1系统;日本北海道大学推出了以 Coons曲面片为边界的TIPS系统;美国MIT大学推出了 以线框边界为基础的ADAM系统;美国Stanford大学推 出了以欧拉操作为基础的Geomod系统;英国Cambridge 大学推出了以边界表示为基础的Build-1系统。
需要指出的是不仅表面模型中常常包括了线框模型 的构图图素,而且表面模型还时常与线框模型一起同时 存在于同一个CAD/CAM系统中。
3.实体模型 实体模型与表面模型的不同之处在于确定了表面的
哪一侧存在实体这个问题。常用办法是用有向边的右手 法则确定所在面的外法线的方向(即用右手沿着边的顺 序方向握住,大拇指所指向的方向则为该面的外法线的 方向)。
1.线框模型(Wireframe Model) 三维线框模型是在二维线框模型的基础上发展起来的。
在60年代初期,用户通过逐点、逐线地构造二维线框模型, 就能用计算机代替手工绘图。由于图形几何变换和投影变 换理论的发展,认识到在计算机内部的存储信息中加上第 三维信息,再用不同视向的投影变换,就可以在显示器上 显示出不同视向的立体图。因此,三维绘图系统迅速发展 了起来。
环有内外之分,确定面的最大外边界的环称之为外环, 通常其边按逆时针方向排序。而把确定面中内孔或凸台边 界的环称之为内环,其边与外环排序方向相反,通常按顺 时针方向排序。基于这种定义,在面上沿一个环前进,其 左侧总是面内,右侧总是面外。
5.体 体是三维几何元素,由封闭表面围成的空间,也是欧
氏空间R3中非空、有界的封闭子集,其边界是有限面的并 集。
(3)用代数半空间定义的形体,在此半空间中点集可定 义为:{(x,y,z)|f(x,y,z)≤0},此处的f应是不可约 多项式,多项式系数可以是形状参数,半空间定义法只适 用正则形体。
从上述定义中我们知道几何形体有两种重要信息: 几何信息和拓扑信息。几何信息是指描述几何元素(如 点、线、面等)空间位置和大小的信息,如点的空间坐 标值、线段的长度等。
为了保证几何造型的可靠性和可加工性,要求形体上 任意一点的足够小的邻域在拓扑上应是一个等价的封闭圆, 即围绕该点的形体邻域在二维空间中可构成一个单连通域。 我们把满足这个定义的形体称之为正则形体。不满足上述 要求的形体称为非正则形体。
非正则形体的造型技术将线框、表面和实体模型统一 起来,可以存取维数不一致的几何元素,并可对维数不一 致的几何元素进行求交分类,从而扩大了几何造型的形体 覆盖域。
面有方向性,一般用其外法矢方向作为该面的正向。 若一个面的外法矢向外,此面为正向面;反之,为反向面。
区分正向面和反向面在面面求交、交线分类、真实图 形显示等方面都很重要。在几何造型中常分平面、二次面、 双三次参数曲面等形式。
4.环 环是有序、有向边(直线段或曲线段)组成的面的封
闭边界。环中的边不能相交,相邻两条边共享一个端点。
第6章 三维几何造型
几何造型是指一种技术,它能将物体的形状存储在计 算机内,形成该物体的三维几何模型,并能为各种具体应 用提供信息,如能随时在任意方向显示物体形状,计算体 积、面积、重心、惯性矩等。这个模型是对原物体的确切 的数学描述或是对原物体某种状态的真实模拟。
然而,现实世界中的物体是复杂多样的,不可能用某 一种方法就能描述各种不同特征的所有物体。为了产生景 物的真实感显示,需要使用能精确地建立物体特征的表示。
因此从原理上讲,此种模型不能消除隐藏线,不能作 任意剖切,不能计算物性,不能进行两个面的求交,无法 生成数控加工刀具轨迹,不能自动划分有限元网格,不能 检查物体间碰撞、干涉等。但目前有些系统从内部建立了 边与面的拓扑关系,因此具有消隐功能。
尽管这种模型有许多缺点,但由于它仍能满足许多设 计与制造的要求,加上上面所说的优点,因此在实际工作 中使用很广泛,而且在许多CAD/CAM系统中仍将此种 模式作为表面模型与实体模型的基础。线框模型系统一般 具有丰富的交互功能,用于构图的图素是大家所熟知的点、 线、圆、圆弧、二次曲线、样条曲线、Bezier曲线等。
基于点、边、面几何元素的正则形体和非正则形体的 区别如表6.1表所示。
表6.1 正则形体和非正则形体的区别
几何元 素
面
边
点
正则形体
非正则形体
是形体表面 的一部分
只有二个邻 面 至少和三个 面(或三条边) 邻接
可以是形体表面的一部分, 也可以是形体内的一部分, 也可以与形体相分离。
可以有多个邻面、一个邻 面或没有邻面。
多边形和二次曲面能够为诸如多面体和椭圆体等简 单欧氏物体提供精确描述;样条曲面可用于设计机翼、 齿轮及其他有曲面的机械结构;过程的方法,如分形几 何和微粒系统,可以给出诸如树、花、草、云、水、火 等自然景物的精确表示。
6.1 形体的定义和存储模型
6.1.1 形体的定义
几何形体由基本元素点、边、面、体等组成,这些基 本元素的定义如下。
E4 aV1 X
V5 E9
E1
E11
ቤተ መጻሕፍቲ ባይዱE6
V3 V6 Y
E5
b
E2
E10
V2
图6.2 组成长方体的顶点和边
表6.2 长方体的顶点表
顶点表 V1 V2 V3 V4 V5 V6 V7 V8
x坐标
aaaa0000
y坐标
0bb00bb0
z坐标
00cc00cc
边号 起点号 终点号
表6.3 长方体的边表
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10 E11 E12
F5 Z
c V8
E7
F2 V7
F6 E12
E8
E3 V4
V5 E4
E9
V1
a
E1
X F1
E11
E6
V3 V6
E5 E2
b
E10
V2 F3
F4 Y
图6.3 长方体的顶点、边和面
表6.4 长方体的面表
面号 F1
F2
F3
F4
F5
F6
边号 E1 E2 E5 E6 E1 E10 E2 E11 E3 E12 E4 E9 E3 E4 E7 E8 E5 E9 E6 E10 E7 E11 E8 E12
面号 边号
表6.5 长方体的环表
F1
F2
F3
F4
E1 E2 E8 E7 E1 E9 E2 E10 E3 E4 E6 E5 E5 E10 E6 E11
F5
E3 E11 E7 E12
F6
E4 E12 E8 E9
实体模型成了设计与制造自动化及集成的基础。依靠 机内完整的几何与拓扑信息,所有前面提到的工作,从消 隐、剖切、有限元网格划分、直到NC刀具轨迹生成都能 顺利地实现,而且由于着色、光照及纹理处理等技术的运 用使物体有着出色的可视性,使它在CAD/CAM、计算 机艺术、广告、动画等领域有广泛的应用。
实体模型的构造方法常用机内存储的体素(Primitive), 经集合论中的交、并、差运算构成复杂形体。
6.2 三维实体表示方法
形体的线框模型、表面模型和实体模型是一种广义的 概念,并不反映形体在计算机内部,或对最终用户而言所 用的具体表示方式。从用户角度看,形体表示以特征表示 和构造的实体几何表示(CSG)较为方便;从计算机对形 体的存储管理和操作运算角度看,以边界表示(BRep) 最为实用。为了适合某些特定的应用要求,形体还有一些 辅助表示方式,如单元分解表示和扫描表示。
例如规定正向指向体外,如图6.4所示。如此只须将 表6.4的面表改成表6.5的环表形式,就可确切地分清体内 体外,形成实体模型了。
体外
图6.4 有向边确定外法线方向 实体模型的数据结构当然不会这么简单,可能有许多 不同的结构。但有一点是肯定的,即数据结构不仅记录了 全部几何信息,而且记录了全部点、线、面、体的拓扑信 息,这是实体模型与线框或表面模型的根本区别。
表面模型的优点是能实现以下功能:消隐、着色、表 面积计算、二曲面求交、数控刀具轨迹生成、有限元网格 划分等。此外擅长于构造复杂的曲面物体,如模具、汽车、 飞机等表面。它的缺点是有时产生对物体二义性理解。
表面模型系统中常用的曲面图素有平面、直纹面、 旋转面、柱状面、贝塞尔曲面、B样条曲面、孔斯曲面 和等距面。
2.表面模型(Surface Model) 这种模型通常用于构造复杂的曲面物体,构形时常
常利用线框功能,先构造一线框图,然后用扫描或旋转 等手段变成曲面,当然也可以用系统提供的许多曲面图 素来建立各种曲面模型。
该模型的数据结构原理见图6.3,与线框模型相比, 多了一个面表(顶点表和边表与表6.2和表6.3完全相同, 面表见表6.4),记录了边、面间的拓扑关系,但仍旧 缺乏面、体间的拓扑关系,无法区别面的哪一侧是体内, 哪一侧是体外,依然不是实体模型。
(3)插值点 为提高曲线和曲面的输出精度,在型值点之 间插入的一系列点。
一维空间中的点用一元组{t}表示;二维空间中的点 用二元组{x,y}或{x(t),y(t)}表示;三维空间中的 点用三元组{x,y,z}或{x(t),y(t),z (t)}表示。n 维空间中的点在齐次坐标系下用n+1维表示。