讨论CAD软件设计中模型的一些问题。
CAD的主要处理对象是“形”——“形体”和“形状”,“形体”和“形状”由几何描述,建立几何模型。在几何模型的基础上,承载工程内容与工程属性,形成工程零件,用于设计和制造。
因此,CAD模型的基础是几何模型,或者说,几何模型是CAD的基本模型(基础模型),抑或CAD模型的基本载体是几何模型。
在几何模型上附加工程信息就形成工程上“零件”,用于表达产品的设计与制造。
CAD软件本质上都是围绕几何模型的构造、操作、运算、变换、显示和传输、转换等展开的。直接操作对象是点-线-环-面-体,以及曲线与曲面等几何元素。
“模型”主要体现出“表示(构造)”和“表现(显示)”两种性质。
模型的表示和表现都要有变换的支持。
根据工程应用领域的不同,“零域”是不同的,因此,需要设置“零域模型”。
几何模型是CAD模型的基本载体,呈现表示性质,或构造性质,属于输入,在计算机中代表“产品”。
1.1 基本几何
平面基本几何包括直线、圆、弧、椭圆、曲线(双圆弧曲线,Spline、Bezier、NURBS曲线)等。
空间基本几何包括球、圆柱、圆锥、圆台、圆环等基本体素(Primitive)。
这些几何元大多以数学模型形式表示,以离散或者有序的方式呈现。
1.2 基础模型
表示空间形体的模型称为“空间模型”,例如,平表面形体、曲表面形体和实体形体等。他们表示三维空间有限范围内的几何形状,常称为形体shape,由若干几何元素及拓扑关系组成。
构造表示:构造实体几何(Constructive Solid Geometry,CSG)。展开它的方法有布尔运算等。
边界表示:BRep(Boundary Representation),一种实体模型的表示方法,由表面的组合表示实体模型,通过一组构成边界的拓扑信息(体、面、边、顶点等)及几何信息(曲面、曲线和点)对象来定义实体的形状和大小。
BRep是一种“静态”的表示形式,它完整、“精确”的表示一个空间形体。常由扫掠造型、特征造型以及交、并、差等布尔运算方法产生,基本体素可由四边形、三角形展开(逼近)参与BRep模型的构建。
分解表示:四叉树(quadtre)表示、八叉树(Octree)表示。
三角化表示:常用于复杂曲面的近似化表示。
基于点元的几何造型(Point-Sampled Geometry Modeling)。
1.3 模型引用
单个模型除了直接构造以外,还可通过模型的整体引用构建新的模型。例如,场景(装配)、动画等。
1.4 几何信息与拓扑信息
几何信息:用以确定每个分量的几何位置(如点坐标)和描述(如平面、曲面)。
拓扑信息:用来定义形体的几何元素的数目及相互间的连接(构造)关系。
BRep是一种完整表示形体几何信息和拓扑信息的代表,它足够表达一个完整的三维形体。BRep已经是一种包含几何信息与拓扑信息的完整表示,不必刻意强调所谓的“BRep拓扑几何”。
几何信息常被认为是形体的主要信息,因为人们平时常注意的往往是形体的几何信息,例如“大/小”“方/圆”等。其实,拓扑信息在背后起着决定性的作用:、
如果在平面上给出4个点,可以连成一个4边形(特殊情况是矩形),也可以连成一个“×”形状。只是连接方式,即拓扑信息的不同,表示的两个形状完全不同。
图形或者形体的交、并、差等运算,关注的重点是拓扑信息的重构(基于交点或交点的计算)。
在几何模型的基础上,加上工程信息,才成为工程模型,成为所谓的“零件”。
工程信息包括标注信息(尺寸、公差)、文字(符号)、材料(也体现在“表现”中)等。
工程信息也有称PMI:产品制造信息(Product Manufacturing Information)
或称为“属性信息(attribute)”。
“显示模型”呈现表现性质,用于在画面上展示模型,类似的字汇有“绘制”“渲染”等,偏重于输出和显示。
显示模型的表现模式有:线框图(Wireframe Mode)、表面图(Surface Mode)和实体图(Solid Mode)等。
“显示模型”通常包括:
光照模型、颜色模型、纹理模型等。
以及显示材质、相机、水印和场景背景等显示属性。
变换包括同空间两个坐标系之间的变换和降维变换(投影)。
在模型的构造、引用和显示的过程中,变换是基本的工具,是必不可少的。
模型构造时,变换用于对形体本身形状的改变和形体引用(装配、动画)位置的改变。
在显示过程中,有模型在空间的变化和投影平面的选择等。
强调使用齐次变换矩阵,建议采用右乘方式定义矩阵运算次序。
模型的构建、引用、显示等基于坐标系。建议采用Y轴朝上,X轴向右的右手直角坐标系。
为了构造、引用和计算不同场合的计算需要,可以设置:
构造坐标系(用于单个几何、形体的建立)
应用坐标系(用于形体的引用)
计算坐标系(用于简化几何计算)等。
零域(zero-domain concept),也称误差,工程上也有称为“容差”。
计算机的计数机制是按冯•诺依曼的二进制机制的,数本身就是一种近似表示。而工业领域、或者说,应用领域不同,模型的表示和对模型的运算,其“零域”也是不同的。
一般可设置3种零域:Eps、EpsHigh、EpsLow等。
在计算机或者在CAD模型构造和软件设计中需要强调“零域”模型及对它的单独设置。