计算机辅助设计5_第1页
计算机辅助设计5_第2页
计算机辅助设计5_第3页
计算机辅助设计5_第4页
计算机辅助设计5_第5页
已阅读5页,还剩82页未读, 继续免费阅读

下载本文档

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

文档简介

第5章计算机辅助几何设计

5.1自由曲线

5.2自由曲面CAD中由已知曲线或曲面的数学方程生成的曲线曲面称为规则曲线曲面,常用隐函数或二次方程的显函数表示。但在汽车、轮船、飞机、模具、艺术品等产品设计中,存在大量的不能用二次曲面描述的曲线曲面,这类曲线曲面称为自由曲线(FreeFormCurves)和自由曲面(FreeFormSurfaces),这是计算机辅助几何设计研究的主要几何形状。计算机如何描述曲面,曲线几何信息,如何生成,如何控制,如何处理?5.1自由曲线5.1.1曲线曲面描述的基本原理5.1.2Hermite曲线5.1.3Bezier曲线5.1.4B样条曲线5.1.5非均匀有理B样条(NURBS)曲线5.1.1曲线曲面描述的基本原理自由曲线可以是由一系列的小曲线段连接而成,自由曲面可以是由无数个小的曲面片拼合而成。因此,曲线曲面的研究重点是曲线段或曲面片的描述及其连接拼合方法。1.几何设计的基本概念在自由曲线和曲面描述中常用三种类型的点:(1)特征点(控制顶点):用来确定曲线曲面的形状位置,但曲线或曲面不一定经过该点。(2)型值点:用于确定曲线或曲面的位置与形状并且经过该点。(3)插值点:为了提高曲线曲面的精度,在型值点之间插入的一系列点在曲线曲面设计中,通常是用一组离散的型值点或特征点来定义和构造几何形状,并且所构造的曲线曲面应满足光顺的要求。这种曲线曲面定义的主要方法是插值,逼近或拟合。

(1)插值:给定一组精确的数值点,要求构造一个函数,使之严格地依次通过全部型值点,且满足光顺的要求。(2)拟合:对于一组有误差的数据点,构造一个函数,使之在整体上接近全部数据点而不必通过全部数据点,使所构造的函数与数据点误差在某种意义上最小。(3)逼近:对于一组给定的控制顶点,要求构造一个函数,使之在整体上最接近这些控制点而不一定通过这些点。(4)光滑(smooth):从数学意义上讲,光滑是指曲线或曲面具有至少一阶连续导数。(5)光顺(fair):至今仍是一个模糊的概念,尚无统一的标准。一方面有主观的因素,另一方面与应用背景相关。但仍有一些客观标准及处理方法。(二阶连续导数)曲线曲面可以用隐函数、显函数或参数方程表示。用隐函数表示不直观,作图不方便(如ax+by+c=0,f(x,y,z)=0);用显函数表示存在多值性(如y=f(x),y2=x2+

r2)和斜率无穷大(如y=mx+b)等问题。此外,隐函数和显函数只适合表达简单、规则的曲线曲面。

自由曲线曲面多用参数方程表示,相应地称为参数曲线或参数曲面。空间的一条曲线可以表示成随参数t变化的运动点的轨迹,其矢量函数为:

P(t)=P(x(t),y(t),z(t)),t的范围是[0,1](规范化)同理,空间中的一张曲面可用参数(u,v)表示为:

P(u,v)=P(x(u,v),y(u,v),z(u,v)),(u,v)的范围是[0,1]×[0,1]2.曲线曲面的数学描述方法xyzY(t)P(t)Z(t)参数曲线基础切矢量坐标变量关于参数的变化率切矢量表示当参数t递增了一个单位时三个坐标变量的变化量。定义曲线在t处的切矢量为:P0p1pn弧长T=dP/ds=limΔP/Δs(Δs->0)(ds)2=(dx)2+(dy)2+(dz)2引入参数t,上式可改写为:考虑到矢量的模非负,所以:故弧长s是t的单调增函数,其反函数t(s)存在,且一一对应,得P(t)=P(t(s))=P(s)

于是:即T是单位切矢量。也就是说,以弧长为参数时,曲线的切矢量为单位矢量,记为T(s)。从弧长的定义可见,它既与参数t的选取无关,也与坐标系无关,从而以弧长为参数来表示曲线易于讨论曲线本身固有的性质。法平面密切平面从切面tnρbP曲线特性分析曲率矢量切矢t(s)对弧长s求导所得的导矢dt(s)/ds单位主法矢曲率矢量单位矢量,记为n(s)曲率:曲率矢量的模长,记为k(s)曲率半径:曲率的倒数副法矢:与t和n相互垂直的单位矢量称为,记为b(s)密切平面:由t和n张成的平面;从切面:由n和b张成的平面法平面:由t和b张成的平面给定参数曲线PP(t),t[0,1].若P

(t0)

0,则称t

t0的对应点P(t0)为该曲线的一个奇(异)点;若P

(t0)

0,则称t

t0的对应点P(t0)为该曲线的一个正则点.若P之上点点正则,则称C为正则曲线,并称参数t为正则参数.若视参数曲线为动点轨迹,正则点的几何意义则是当参数在该点处作微小变动时动点的位置同时作真正的变动.正则点和正则曲线例1若参数曲线C:r

r(t)

a,t

R

,则其几何图形仅仅表示一点,而不是正常的曲线;此时所有的参数值对应于图形实体的同一点.这是非正则曲线的极端例子.例2圆柱螺线视为动点的轨迹,通常参数化为r(t)

(acos(w

t),asin(w

t),v

t),t

R,其中三个常数a

0,w

0和v

0分别为动点运动的圆周半径、角速率和向上速率.此时r

(t)

(

awsin(wt),awcos(wt),v)

0,说明该参数化使之成为正则曲线.参数连续性传统的、严格的连续性称曲线P=P(t)在处n阶参数连续,如果它在处n阶左右导数存在,并且满足记号几何连续性直观的、易于交互控制的连续性0阶几何连续称曲线P=P(t)在处0阶几何连续,如果它在处位置连续,即记为1阶几何连续称曲线P=P(t)在处1阶几何连续,如果它,并且切矢量方向连续记为2阶几何连续称曲线P=P(t)在处2阶几何连续,如果它在处(1)(2)副法矢量方向连续(3)曲率连续几何连续与参数连续的关系用参数表示曲线曲面的优点:(1)具有几何不变性。某些几何性质不随一定的坐标变换而变化的性质称为几何不变性。曲线形状本质上与坐标系的选取无关。(2)可以处理无穷大的斜率。dy/dx=(dy/dt)/(dx/dt)当dy/dx无穷大时,可以处理分别处理dx/dt=0dy/dt,不会中断计算。(3)参数方程将自变量和因变量完全分开,使得参数变化对各因变量的影响可以明显地表示出来。(4)可以处理多值曲线。(5)规格化参数变量,使其相应的几何分量是有界的。由于参数限制在0到1的闭区间之内,因而所表示的曲线总是有界的,不需另设其他数据来定义其边界。(6)对曲线曲面形状控制的自由度更大。如一条二维三次曲线的显式表示为:(7)易于用矢量和矩阵表示几何量,从而简化了计算。

其中只有4个系数可控制曲线的形状,而对于其参数表示为:

其中有8个系数可用来控制曲线的形状。矢量表示形式加权和形式缺点没有明显的几何意义与曲线的关系不明确,导致曲线的形状控制困难多项式参数曲线的两种表达方式(1/3)矩阵表示矩阵分解,使G中的各矢量具有几何意义几何矩阵控制顶点基矩阵M(n+1)×(n+1)的矩阵确定了一组基函数2/3例子—直线段的矩阵表示P0P1P0+P15.1.2Hermite曲线Hermite曲线是给定曲线段的两个端点坐标以及两端点处的切线矢量来描述曲线。空间一条三次参数曲线可以表示为:

该曲线的矢量表达式为:

应用端点P0和P1,以及端点切矢P0’和P1’,可得:矩阵表达式为:于是,或可以表示为形状控制改变端点位置矢量调节切矢量的方向Hermit曲线的控制调节切矢量的长度控制顶点几何变换对曲线变换等价于对控制顶点变换5.1.3Bezier曲线1962年,法国雷诺汽车公司Bezier提出了一种自由曲线曲面的设计方法,称为Bezier方法。其具体设计过程是:从模型或手绘草图上取得数据后,用绘图工具绘出曲线图,然后从这张图上大致定出Bezier特征多边形各控制顶点的坐标值,并输入计算机进行交互的几何设计,调整特征多边形顶点的位置,直到得出满意的结果为止;最后用绘图机绘出曲线样图。1.Bezier曲线定义在空间给定n+1个控制顶点Pi(I=0,1,…,n),称下列参数曲线为n次Bezier曲线。称为伯恩斯坦基函数(BernsteinBasis)。一般称折线为P(t)的控制多边形;称各点为P(t)的控制顶点。作图法绘制3次Bezier曲线t=1/2点t=1/4点最终曲线

(1)三次Bezier曲线常用的三次Bezier曲线,由4个控制顶点确定。容易算出,与其对应的4个Bernstein基函数为:相应的Bezier曲线为标准展开方式B0,3(t)B2,3(t)B1,3(t)B3,3(t)(2)二次Bezier曲线二次Bezier曲线由三个控制顶点确定,此时,相应的曲线表达式为对应于一条抛物线。作图法绘制2次Bezier曲线T=1/3T=1/2T=2/3(3)一次Bezier曲线这是一条连接P0和P1的直线段。一次Bezier曲线由两个控制顶点确定,此时,相应的曲线表达式为2.Bezier曲线的程序设计实际应用的主要是三次Bezier曲线。利用它的参数表达式在区间(0,1)内取多个值,例如100,计算出这100个值对应的坐标点,依次连接这些点就得到一条Bezier曲线。为程序设计方便,改写曲线的表达式为:注意:再添加一个z坐标,就可得到空间Bezier曲线。3.Bezier曲线的性质在Bernstein基函数中,n为基本曲线的次数,i为基函数的序号。由排列组合和导数运算规律可以推导出Bernstein基函数的如下性质:(1)正性(非负性):(2)权性:(3)对称性:(4)导数性质:(5)递推性质:Bezier曲线的一些性质:1)端点性质

曲线经过特征多边形的首末点。因为

曲线P(t)在P0点与边P0P1相切,在Pn点与2)对称性由Bernstein基函数的对称性可知,控制点的次序完全颠倒过来后,曲线的形状不变,但走向相反。这表明,同一特征多边形定义的Bezier曲线是惟一的.相切。因为(3)凸包性所以,P(t)是P0,P1,…,Pn凸线性组合。这证明Bezier曲线完全被包在其特征多边形的凸包内。所以,控制顶点P0,P1,…,Pn的凸包为:(5)交互能力(4)几何不变性由给定控制顶点所确定的Bezier曲线的形状与坐标系的选取无关。此性质就是Bezier曲线的几何不变性。几何不变性对几何图形来说是一种很重要的性质。在计算机图形学中经常要作坐标变换,如果同一表示式在不同坐标系下表示不同的曲线,则会给图形变换带来很多不便之处。控制多边形P0P1…Pn大致地勾画出Bezier曲线P(t)的形状。要改变P(t)的形状,只要改变P0,P1,…,Pn的位置即可。(6)变差减小性(7)保凸性如果Bezier曲线P(t)的控制多边形P0P1…Pn是一平面图形,则该平面内的任意直线与P(t)的交点个数不多于该直线与控制多边形P0P1…Pn交点的个数,这一性质称为变差减小性。此性质说明Bezier曲线比控制多边形所在的折线更光顺。如果平面上的凸控制多边形能导致所生成的曲线为凸曲线,则称这个曲线生成的方法具有保凸性。我们将控制多边形的终点与起点连起来,如果这样形成一个闭的凸多边形,则相应的Bezier曲线是一个凸的平面曲线。此性质就是Bezier曲线的保凸性。4.

Bezier曲线的拼接与反算Bezier曲线的次数是由其控制顶点确定的。常用的三次Bezier曲线由四个控制顶点确定。多控制点(n>4)的三次Bezier曲线存在着几条曲线的拼接问题,其关键问题是如何保持拼接处的连续性。不同的问题在连接点处对连续性有不同的要求,常用到的有以下几种:参数连续:切矢同向且模长相等.几何连续:见下页1)拼接条件条件P1P0P3=Q0Q2Q1P2Q3设P(t)是Pi(i=0,1,2,3)确定的三次Bezier曲线;Q(t)是Qi(i=0,1,2,3)确定的三次Bezier曲线.P3=Q0,满足1)两曲线在连接点达到一阶导数连续的条件为0<=t<=1即亦即,P2、P3(Q0)和Q1共线,且P2、Q1在P3的异侧。2)两曲线在连接点达到二阶导数连续的条件为由可得根据以上条件,可以调整P(t)和Q(t)这两段曲线,使得在连接点处达到一阶几何或导数连续:步骤1:平移多边形使Q0与P3重合。步骤2:围绕Q0转动多边形使与平行且同向(或模长相等)。P1P0P3=Q0Q2Q1P2Q3

所谓曲线控制顶点的反算是指由曲线上的一系列点(称之为型值点)反求出该曲线的一系列控制顶点的过程。

如果给定n+1个型值点,要求一系列控制点,由这些控制点定义的一条Bezier曲线通过已知的型值点,这与平常给定控制点求型值点的过程恰好相反。设所求的控制点为,它定义的Bezier曲线为P(t),满足,于是注意:t的取法不同,反求的控制顶点不同。2)反算5.1.4B样条曲线Bezier曲线是通过逼近特征多边形而获得曲线的,存在的不足是:1)缺乏局部修改性,即改变某一控制点对整个曲线都有影响.2)n较大时,特征多边形的边数较多,对曲线的控制减弱。1972年,Riesenfeld等提出了B样条曲线。用B样条基函数代替Bernstein基函数;逼近特征多边形的精度更高.

多边形的边数与基函数的次数无关。具有局部修改性.设有控制顶点P0,P1,…,Pn,则k阶(k-1次)B样条曲线的数学表达式为:式中Ni,k(t)是k阶k-1次B样条曲线的基函数.它由一个结点向量递归定义,它仅在某个局部不等于零,因而使B样条曲线具有局部可修改性.deBoor-Cox递推定义三次均匀B样条曲线对于n+1个控制顶点,每四个顺序点1.三次均匀B样条曲线的表达式一组构造相应的一段三次B样条曲线:其中N0,4(t)=1/6(1-t)3,N1,4(t)=1/6(3t3-6t2+4),N2,4(t)=1/6(-3t3+3t2+3t+1),N3,4(t)=1/6t3

所以,Pi(t)的矩阵表达式为根据上式可以在平面直角坐标系中设计三次B样条曲线生成的程序.

Pi(0)Pi+3Pi+2Pi+1PiP’i(0)P’i(1)Pi(1)2.三次均匀B样条曲线段的几何特性、拼接三次B样条作图法三等分点中点ABCDQ0Q1Q2Q3由ABCD特征点构成B样条曲线就是由q0Q1Q2Q3特征点控制的Bezier曲线3.三次均匀B样条曲线的边界控制与反算P0Pn-1P1P-1PnPn+1在始端和终端各增加一个顶点P-1和Pn+1,使P-1P0=P0P1Pn-1Pn=PnPn+1则P0(0)=P0,P0’

=P1-P0.终点具有类似的特性.边界处理在实际应用中,往往需要所设计的B样条曲线通过控制多边形的起点和终点,这就需要对曲线的边界进行处理.有多种处理方法,现介绍一种:2)控制顶点的反求在实际应用中往往是知道曲线上的型值点,而并不知道特征多边形顶点的位置,为构造B样条曲线,就需要由这些型值点反求出特征多边形的顶点,这就是B样条曲线顶点的反求.设已知型值点列Qi(i=1,2,…,n-1),要求一条三次B样条曲线经过这些点,求出这条曲线的控制顶点Pi(i=0,1,…,n).由曲线的端点性质可得下列线性方程组:Pi-1+4Pi+Pi+1=6Qi(i=1,2,…,n-1)再补充两个边界条件就可得到唯一解.例如,已知Q1和Qi-1处的切矢,则有把它们写成矩阵形式为5.1.5非均匀有理B样条(NURBS)曲线它提供了解析曲线(如圆锥曲线)和自由曲线统一的数学描述,便于工程数据库的管理和应用.NURBS曲线的定义:给定n+1个控制点Pi(i=0,1,…,n)及其权因子Wi(i=0,1,…,n),则k阶(k-1次)NURBS曲线的表达式为:缺点:计算量大、当权因子为零和负值时容易引起计算的不稳定,导致曲线畸变,因此使用NURBS时应有适当的限制以保证算法的稳定性。5.2自由曲面5.2.1参数曲面的概念5.2.2双三次曲面片的数学表示5.2.3曲面的反算、拼接和互化

5.2.1参数曲面的概念P(u,w)=[x(u,w),y(u,w),z(u,w)]

0<=u,w<=1011uw(u,w)u和w向切矢:四个角点的u向和w向切矢为:Pu(0,0)、Pu(1,0)、Pu(0,1)、Pu(1,1)、Pw(0,0)、Pw(

温馨提示

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

评论

0/150

提交评论