catia V5 自由曲线曲面的基本原理(上).doc_第1页
catia V5 自由曲线曲面的基本原理(上).doc_第2页
catia V5 自由曲线曲面的基本原理(上).doc_第3页
catia V5 自由曲线曲面的基本原理(上).doc_第4页
catia V5 自由曲线曲面的基本原理(上).doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

自由曲线曲面的基本原理(上)浙江黄岩华日(集团)公司 梁建国浙江大学 单 岩1 前言曲面造型是三维造型中的高级技术,也是逆向造型(三坐标点测绘)的基础。作为一个高水平的三维造型工程师,有必要了解一些自由曲线和曲面的基本常识,主要是因为:(1)可以帮助了解CAD/CAM软件中曲面造型功能选项的意义,以便正确选择使用;(2)可以帮助处理在曲面造型中遇到的一些问题。由于自由曲线和自由曲面涉及的较强的几何知识背景,因此一般造型人员往往无法了解其内在的原理,在使用软件中的曲(线)面造型功能时常常是知其然不知其所以然。从而难以有效提高技术水平。针对这一问题,本文以直观形象的方式向读者介绍自由曲线(面)的基本原理,并在此基础上对CAD/CAM软件中若干曲面造型功能的使用作一简单说明,使读者初步体会到背景知识对造型技术的促进作用。2 曲线(面)的参数化表达一般情况下,我们表达曲线(面)的方式有以下三种:(1) 显式表达曲线的显式表达为y=f(x),其中x坐标为自变量,y坐标是x坐标的函数。曲面的显式表达为z=f(x,y)。在显式表达中,各个坐标之间的关系非常直观明了。如在曲线表达中,只要确定了自变量x,则y的值可立即得到。如图1所示的直线和正弦曲线的表达式就是显式的。图1(2) 隐式表达曲线的隐式表达为f(x,y)=0,曲面的隐式表达为f(x,y,z)=0。显然,这里各个坐标之间的关系并不十分直观。如在曲线的隐式表达中确定其中一个坐标(如x)的值并不一定能轻易地得到另外一个(如y)的值。图2所示的圆和椭圆曲线的表达式就是隐式的。图2(3) 参数化表达曲线的参数表达为x=f(t);y=g(t)。曲面的参数表达为x=f(u,v);y=g(u,v);z=g(u,v)。这时各个坐标变量之间的关系更不明显了,它们是通过一个(t)或几个(u,v)中间变量来间接地确定其间的关系。这些中间变量就称为参数,它们的取值范围就叫参数域。显然,所有的显式表达都可以转化为参数表达,如在图1所示的直线表达式中令x=t则立即可有y=t。于是完成了显式表达到参数化表达的转换。由此,我们可以得出下个结论,即参数化表达方式所能表示的曲线(面)种类一定多于显式表达,因此更灵活。同时,我们也应注意到,对同一曲线(面)的参数化表达有多种。如在图1所示的直线表达式中令x=t2,则代入后可得y=t2(注意与前一次转换的不同)。这时,t与x、y的关系由前一次的等价关系变成了现在的平方关系,而所表达的曲线却没有什么不同。当然,这并不意味着我们就可以任意改变其表达方式,而是根据应用的需要来确定适合的关系(这一点在后面还会讲到)。鉴于参数化方法在表达曲线(面)上的灵活性,因此在CAD/CAM软件中自由曲线(面)均采用参数化表达,同时这也是”自由”一词的含义之一。当然,采用参数化方式表达自由曲线(面)还有其它许多优点,这里就不一一介绍了。3 维数的概念对自由曲线而言,不管采用何种表达方式,它都有一个共同的特征,即各种表达方式中只允许有一个变量是可以自由变动的。如显式及隐式表达式中x、y中只有一个可以自由变动,另一个则受到关系式的约束。而参数表达式中x、y、z之间存在两个关系式,因此也只允许其中一个的取值自由变动。同样可以得到,曲面表达式中存在两个可以同时自由变动的变量。几何体的表达式中可同时自由变动的变量的个数称为该几何体的维数(或自由度)。因此,不能将一个三维空间内生成的几何体就简单地归属于三维形体的范畴。例如,一条空间曲线只是一维的形体,因为它的表达式中只允许有一个自由变量。直观地,在曲线上的运动只有前后方向上的选择,而没有其它第二类选择。同样地,空间的曲面为二维形体,一个点是零维形体,而实体造型得到的几何实体则是三维形体。我们可以用下面的式子表示几何体的维数(自由度)判定方法:维数 = 自由度 = 自由变量 = 变量数 - 表达式中的方程数4 Bezier曲线的生成原理自由曲线的种类很多。我们以其中最简单的一种-Bezier样条曲线为例介绍自由曲线的生成原理。图3图3所示为一条由空间两点P1和P2构成的直线段,P是线段上任意一点。如果将P到起始点P1的距离与线段的总长的比值定义为参数t,则立即可以得到P与P1、P2的关系式:|P P1| / |P2 P1| = t即P = (1-t)P1 + tP2由于P1和P2是确定的空间点,P的位置将随t的变化而变化,因此P也可记为P(t)。即P(t) = (1-t)P1 + tP2式(1)上式就是该线段的参数化表达式。其中t为参数,其取值范围为(0,1)。假如我们给定P1和P2的坐标值(x1,y1)和(x2,y2),则将它们分别替换式(1)中的P1和P2即可得到P(t)点的坐标x(t)和y(t)如下:x(t) = (1-t)x1 + tx2y(t) = (1-t)y1 + ty2显然,当t取0时,有P(t) = P1,即P点与P1重合。当t取1时,有P(t) = P2,即P点与P2重合。当t在0到1之间变化时,相应地将得到直线P1P2上的不同点位。如上述,由式(1)表达的通过已知点P1、P2计算一条线段上任意点P(t)的方法称为插值运算。其中参数t的最高幂次称为表达式(或曲线)的阶数。同时,由于式(1)中的t的最高次幂为1,因此式(1)所表示的参数表达式是1阶的,它所代表的插值运算又称为线性插值。由式(1)所表达的线段P1P2称为一阶Bezier样条曲线。P1和P2点称为该线段的控制顶点。类似地,我们可以得到二阶Bezier曲线的生成过程。如图4所示:图4图4中,P1、P2、P3为三个控制顶点,对0到1之间的任意参数t,分别在P1P2、P2P3之间完成与式(1)同样的线性插值,并得到两个插值点:P11 = (1-t)P1+tP2P12 = (1-t)P2+tP3接着,对在P11P12之间完成第二轮线性插值得:P(t) = (1-t)P11+tP12将P11和P12的计算式分别代入上式得P (t)= (1-t)2P1 + 2t(1-t)P2 + t2P3式中Bi2(t)(i=1,2,3)称为二阶Bernstein基函数。i的取值不同,Bi2(t)的表达式也不同。例如i=1时,Bi2(t)= (1-t)2,i=2时,Bi2(t)= 2t(1-t)。当t在0到1之间变动时,P的相应移动轨迹就形成了一条曲线,即由控制顶点P1、P2、P3构成的二阶Bezier样条曲线。n个控制顶点按上述同样的方法(进行n-1轮插值运算)即构成n-1阶的Bezier样条曲线,其表达式为: 式(2)如前所述,理论上,对同一曲线的参数表达是有无穷多种方式的,这也是参数化表达的灵活性之一。例如对图三中的线段也可以用下面的参数表达式表示:P(t) = (1-t)2P1 + t2P2式(3)在这一表达式中,当无论t在0到1范围内取什么值,P(t)仍是线段P1P2上的一个点(尽管同样的t值在式(1)和式(3)中会得到不同的点位)。因此式(2)也是该线段的一个参数表达式,由于其中参数t的最高幂次为2,因此它是二阶的非线性插值。按这一思路,读者也可以”发明”自己的自由(样条)曲线。至于在实际应用中究竟采用何种参数表达式,则取决于其应用价值。事实上,与其它插值方式(如式(3)的方式)相比,线性插值有许多明显的优点,如计算简单、具有控制顶点的凸包性特点等,这里不再一一说明。基于这些优点,线性插值成为应用最广泛的自由曲线生成方式,而用该插值方式生成的自由(样条)曲线称为Bezier曲线。通过总结Bezier曲线的生成原理,我们可以得到一个重要的结论,即自由曲线是由一组控制顶点以某种方式(如线性)插值生成的,其最

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论