信息化 频道

计算机辅助建模的理论方法概述

  1.前言

  随着计算机迅速发展,生产中的设计方法发生着巨大变化。以前只能靠手工完成的许多简单作业,逐渐通过计算机实现高效化和高精度化。其中计算机辅助设计技术即CAD技术是今年来发展较快的一个方向。并且在市场上,流行与使用的三维软件居多,在建立几何模型时所用的方法也各不相同。我们希望有一种统一的处理方法来处理各种不同的几何形状。在对几何建模做了深入研究之后,基于建模思想,总结现有CAD 建模方法并将它抽象为易于理解的两大类——基础模型和复杂建模。

  2.基础建模

  2.1建模思想

  这种方法基于比较简单的几何模型。其思想主要来源于实体模型,对于实体模型,我们先研究它的基础模型——线框模型和表面模型。线框模型像借用金属丝框架来描述几何形状那样,将棱线、轮廓线、交线等表示立体形状特征的线作为形状参数表示三维立体。这种模型称为线框模型。线框模型的数据结构简单,所以具有计算机处理速度快的特点。但是用线框模型表示的立体在计算机内是用线相关的信息来表示的,表示形状特征的信息不够充分。而且用这种模型来求体积,重量等质量参数或者进行隐线消除,都是无法实现的。表面模型它是在线框模型的数据结构基础上,增加与形成立体的各个面相关的数据构成的。表面模型与线框模型相比,只增加了定义面的那一部分数据量,所以,通过使用处理这些数据所得到的信息能够实现诸如求两个面的交线,绘制剖面图,消除隐线等功能。实体模型在表面模型的基础上,再增加实体这些面的哪一侧的信息就构成了实体模型。这种通过指明点、线、面的连接关系以及实体在各个面的哪一侧的信息来表示三维立体的方法叫做边界表示法。此外,还可用另外一种表达方法来描述实体模型称为体素构造发CSG (Constructive Solid Geometry ) 。机械零件和机械产品的几何形状多数是由立方体和圆柱体等简单几何形体组合而成的。因此若事先在计算机内定义出基本的立体形状,就能够利用立体的组合表示各种复杂的几何形体。利用这种思路定义立体图形的方法就是体素构造法。这时所采用的基本立体称为体素(体元) 。在利用体素进行组合构成新的几何形体时,要在这些体素之间进行所谓的和( union) 、差( Substraction) 、以及表示共同部分的交( Intersection)等几何形状的逻辑运算。

  为了说明图形的逻辑运算,图1的简单的平面图形的例子来说明。图1 中A、B的全区域分别以图中所示的方法进行区域划分, 有实体的区域用“1”表示,没有实体的区域用“0”表示。对A、B内的每个对应点进行布尔代数运算。例如进行和运算,就是将A和B有实体的区域合并一起,得到图中符号AUB所示的形状。进行A - B差运算,就是A中有实体的区域减去与B实体相交的部分,反之B - A,则与之相反。而进行交运算,及保留A与B公共部分,其他部分一并删去。边界表示法和体素表示法两种方法各有优缺点,两种方法都得到广泛应用,有的软件同时具有这两种方法,利用其各自长处灵活使用。

  2.2建模方法

  基于以上的建模思想,并且基本建模是建模软件中最基本和常用方法。包括基本体、扩展体、布尔运算、旋转、拉伸(或挤压)和放样等建模方法。运用以上方法可以得到绝大多数的常用模型。如下图:

    图2.2 基本建模方法

  基本体建模

  在大多数软件中,都会给绘制者提供一定的简单三维体的命令和方法。例如在AUTOCAD软件中,“绘图”下拉菜单中“三维实体”子菜单中提供了长方体、球体、圆柱体、圆锥体、楔形体和圆环体等命令。除此之外在3DMAX中还提供了几何球体Geosphere、茶壶Teapot 、四棱锥Pyramid、管状体Tube等命令。

  扩展体建模

  如基本体建模相同,制作者可以直接利用软件中提供的各种参数化扩展几何体建模方法。例如在3DMAX中,可以绘制倒角立方体Chamfer Box;倒角圆柱体Chamfer Cylinder;油桶Oiltank;倒角棱柱Geogon;纺锤体Spindle等三维模型。

  布尔运算

  这种方法基于实体模型可以用体素构造法表达的思想,通过各实体元素间的布尔运算来构造更为复杂的三维实体模型。

  拉伸建模

  这种方法与旋转建模和放样建模的思想是一致的,但不再是基于以上实体模型的表示方法。而是从二维图形出发,从而构造三维实体模型。在众多软件中,大都使用这种方法。拉伸建模的思想原理是通过为二维截面增加厚度,从而生成三维模型。例如:在3DMAX中拉伸命令面板中参数如下:Amout (数量) :表示拉伸厚度,正值为向上拉伸,负值为向下拉伸。

  Segment (段数) :设置拉伸厚度上的片段划分数。

  Capping(顶盖) : 设置是否封闭拉伸物体的顶部(CapStart)或底部(Cap End)

  Output (输出) :设置输出的构成三维对象的曲面类型。

  旋转建模

  其基本原理是选一条曲线作为母线,绕确定轴旋转而形成一个三维模型。凡是具有旋转对称轴的三维物体,都可以用旋转方法生成。如酒杯、车轮、轴等。

  放样建模

  放样概念来自于西方早期的造船术,造船时支撑船身的框架叫做样架(Loft) ,既在船龙骨上定位横截面,而往框架上安装表皮叫做放样(Lofting) 。在3DMAX中放样是指先创建一个二维造型作为放样路径( Path)用于定义模型长度,然后创建一个或多个二维图形( Shape)作为模型截面,路径作为一个主干把不同截面图形连接在一起而形成三维模型。在Autocad中,放样建模方法的基本思想是相同的,但是是用Extrude拉伸命令来完成的。关键在设置路径,然后选择用路径拉伸的方法建立三维模型。一般分为单截面放样和多截面放样建模实体模型。单截面是指沿路径所有的截面都是相同的,而多截面是指沿路径的横截面不是相同的而是变化的。此外,基于线框模型和表面模型,软件中也有很多设计者可以使用的建模方法。这里不再一一赘述。

  3.复杂曲面建模

  复杂建模是创建复杂的造型,特别是一些不规则造型方法。例如构成汽车车体和电话机等的曲面用数学解析式来表达很困难。一般称这种曲面为自由曲面。在CAD系统中,要表达设计着在大脑中描绘出的三维空间自由曲线,常采取将给定的曲线分成若干段,用比较简单的数学式子来表达各段曲线的方法。例如将曲面分割成曲面元,用曲面元进行连接的方法。一般地,表示曲面元的方法分为内插法和近似法两种。

  3.1内插法

  用简单的多项式来表示曲面元,多项式的系数由分割点的连续条件来确定。例:双三次曲面元。

    图2.3 双三次样条曲面

    内插法就是一种常用的数值逼近法。内插法通常定义为根据二个已知值估计出中间值,例如一个函数或序列,其中最常见的形式是线性内插法。线性内插法在二个已知数据点间画一条直线,新的数据点就位于这条直线上,具体位置要根据其值与二个端点之一的接近程度确定。 在以下方程中:

    值f(a)和f(b)是x=a和x=b时的已知数据点

    3.2近似法

    在分割点之外指定若干个控制点,用由这些点确定的函数来表示曲面元。例:贝塞尔曲面元(e-works)

    图2.4 贝塞尔曲面

0
相关文章