《曲线曲面建模.pptx》由会员分享,可在线阅读,更多相关《曲线曲面建模.pptx(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、自由曲线与自由曲面基本概念一、自由曲线与自由曲面基本概念第1页/共50页1 1)规则曲线曲面)规则曲线曲面不能用简单的数学方程进行描述的曲线曲面称为自由曲线(Free Form Curves)和自由曲面(Free Form Surfaces),通常用参数方程表示。如汽车、轮船、飞机、人体的外形等。CAD中可以用数学方程式表示的曲线曲面称为规则曲线曲面,常用隐函数或二次方程的显函数表示。如圆、抛物线/球、圆柱、圆锥等。2 2)自由曲线曲面)自由曲线曲面曲线曲面按照描述方式的不同可以分为两类:第2页/共50页自由曲线曲面的计算机内部描述有一个特征就是它具有插补性,或称作近似性。为此产生了许多不
2、同的自由曲面描述方法,如Bezier逼近、Coons曲面、B样条插补以及NURBS描述等都通过参数多项式近似表示,目前曲面多采用NURBS样条表达。二、二、曲线曲面描述的基本原理曲线曲面描述的基本原理自由曲线可以是由一系列的小曲线段连接而成,自由曲面可以是由无数个小的曲面片拼合而成。因此,曲线曲面的研究重点是曲线段或曲面片的描述及其连接拼合方法。第3页/共50页1 1、几何设计的基本概念、几何设计的基本概念型值点:用于确定曲线或曲面的位置与形状并且经过该点。在自由曲线和曲面描述中常用几种类型的点:Degree 3,5 poles,2 segmentsKnotpoints:Pole:1Defin
3、ing points:+112345123Segment 1由pole 1 pole 4描述Segment 2由pole 2 pole 5描述+特征点(控制顶点):用来确定曲线曲面的形状位置,但曲线或曲面不一定经过该点。节点控制点型值点第4页/共50页(1)常用术语 插值(interpolate):给定一组精确的数值点,要求构造一个函数,使之严格地依次通过全部型值点,且满足光顺的要求。逼近(approach):对于一组给定的数值点,要求构造一个函数,使之在整体上最接近这些点而不一定通过这些点。拟合(fit):指已知某函数的若干离散函数值f1,f2,fn,通过调整该函数中若干待定系数f(1,2,
4、3),使得该函数与已知点集的差别(最小二乘意义)最小。第5页/共50页光滑(smooth):从数学意义上讲,光滑是指曲线或曲面具有至少一阶连续导数。光顺(fair):指曲线的拐点不能太多。如平面曲线光顺条件:具有二阶几何连续;不存在多余的拐点;曲率变化较小。第6页/共50页连续性描述分段边界处的曲线与曲面的行为。C0:零阶参数连续,指两曲线段共点。C1:一阶导数连续,指两曲线段在共点处具有相同的一阶导数;即切矢量方向相同,大小相等。C2:二阶导数连续,指两曲线段在共点处一阶、二阶导数的方向相同,大小相等,即等曲率。Cn:n阶导数连续。(2)连续性1)参数连续性在CAD中通常使用的两种连续性:1
5、)参数连续性(用Cn 表示,其中 n 是某个整数);2)几何连续性(用Gn 表示)。第7页/共50页2)几何连续性 G0:零阶几何连续,与零阶参数连续C0相同,指两曲线段共点。G1:一阶几何连续,指两曲线段在共点处切矢量方向相同,但大小不等。G2:二阶几何连续,指两曲线段在共点处其一阶、二阶导数方向相同,但大小不等。Gn:n阶几何连续。第8页/共50页下面讨论两条曲线下面讨论两条曲线P(t)与与Q(t)在参数在参数t0,1的连续问的连续问题题:1)若要求在结合处达到G0或C0连续,即在结合处位置连续:P(1)=Q(0)2)若要求在结合处达到C1连续,即在连接点处有相同的一阶导数。若要求在结合处
6、达到G1连续,即在连接点处满足G0连续的条件下,有公共的切矢:Q(1)=P(0)(0)当=1时,G1连续就成为C1连续。第9页/共50页3)若要求在结合处达到C2连续,即两相邻曲线段的连接点处有相同的一阶导数和二阶导数。若要求在结合处达到G2连续,即在连接点处满足G1连续的条件下,有公共的曲率矢:这里为任意常数。当=1,=0时,G2连续就成为C2连续。从上面的讨论可以看到:C1连续保证G1连续,C2连续能保证G2连续;但反过来不行,也即Cn连续的条件比Gn连续的条件要苛刻。第10页/共50页第11页/共50页一阶导数连续二阶导数连续三阶导数连续第12页/共50页2、曲线、曲面的表达、曲线、曲面
7、的表达(1)显式表达坐标值y可利用等号右侧的x的计算式直接计算得到。曲线:y=f(x),如y=x,y=2x 曲面:z=f(x,y)(2)隐式表达 x、y的关系是“隐含”在曲线的表达式中的。曲线:f(x,y)=0;如:x2+y2-r2=0 曲面:f(x,y,z)=0;曲线曲面可以用显函数、隐函数或参数方程表示。第13页/共50页隐函数、显函数表示的缺点:用隐函数表示不直观,作图不方便(如ax+by+c=0);用显函数表示存在多值性(如x2+y2=r2)和斜率无穷大(如y=mx+b)等问题。此外,隐函数和显函数只适合表达简单、规则的曲线曲面。自由曲线曲面多用参数方程表示,相应地称为参数曲线或参数曲
8、面。第14页/共50页(3)参数表达x、y间的关系是通过一个“t”来间接地反映出来的,t即称为参数。曲线:x=f(t)t为参数,在01之间变化。y=g(t)曲面:x=f(u,v)u,v为参数,通常规定在01之间变化。y=g(u,v)z=h(u,v)第15页/共50页P(u,v)=P(x(u,v),y(u,v),z(u,v),(u,v)的范围是 0,10,1空间的一条曲线可以表示成随参数t变化的运动点的轨迹,其矢量函数为:P(t)=P(x(t),y(t),z(t),t 的范围是 0,1同理,空间中的一张曲面可用参数(u,v)表示为:第16页/共50页参数表达的重要特点:参数表达的重要特点:X=t
9、2Y=t2X=tY=t 一条曲线可以有不同的参数表达方式;参数的等间距分布不一定导致曲线上对应点的等间距分布,即参数域的等间距分割不等价于曲线的等间距分割。第17页/共50页1)具有几何不变性。某些几何性质不随坐标变换而变化的性质称为几何不变性。曲线形状本质上与坐标系的选取无关。2)可以处理无穷大的斜率。dy/dx=(dy/dt)/(dx/dt)3)参数方程将自变量和因变量完全分开,使得参数变化对各因变量的影响可以明显地表示出来。4)可以处理多值曲线。5)规格化参数变量,使其相应的几何分量是有界的。由于参数限制在0到1的闭区间之内,因而所表示的曲线总是有界的,不需另设其他数据来定义其边界。用参
10、数表示曲线曲面的优点:第18页/共50页 7)易于用矢量和矩阵表示几何量,从而简化了计算。其中只有4个系数可控制曲线的形状,而对于其参数表示为:其中有8个系数可用来控制曲线的形状。6)对曲线曲面形状控制的自由度更大。如一条二维三次曲线的显式表示为:第19页/共50页三、自由曲线三、自由曲线1、Hermite曲线/三次参数样条曲线2、Bezier曲线3、B样条曲线4、非均匀有理B样条(NURBS)曲线第20页/共50页 1 1、HermiteHermite曲线曲线Hermite曲线是给定曲线段的两个端点坐标以及两端点处的切线矢量来描述的一条三次曲线。空间一条三次参数曲线可以表示为:该曲线的矢量表
11、达式为:应用端点P0和P1,以及端点切矢P0和P1,可得:第21页/共50页于是,第22页/共50页矩阵表达式为:于是,第23页/共50页令:F1=2t3-3t2 1F2=-2t3 3t2 F3=t3-2t2 t F4=t3-t2则:F1、F2、F3、F4称为调和函数,也称Hermite基函数。它表示几何系数p0、p1、对曲线形状的影响程度。第24页/共50页已知P0(-2,2),P1(2,2),P0(1,2),P1(1,-1),试利用Hermite曲线方法计算P(0.3)(即参数t=0.3)点的坐标。例题:P0(-2,2)P1(2,2)P0P1xy0第25页/共50页1 1)HermiteH
12、ermite曲线方程:曲线方程:2)将参数t=0.3以及起始端点坐标、切矢代入曲线方程:第26页/共50页三次参数样条曲线三次参数样条曲线样条曲线:强迫曲线通过一组离散有序的型值点的光滑曲线。三次样条曲线:保证每一曲线段为三次,且曲线上各点的切线斜率、曲率连续变化,即保证曲线段的连续性达到C2。第27页/共50页2 2、BezierBezier曲线曲线1962年,Bezier(法国雷诺汽车公司造型工程师)提出了一种自由曲线曲面的设计方法,称为Bezier方法。其具体设计过程是:从模型或手绘草图上取得数据后,用绘图工具绘出曲线图,然后从这张图上大致定出Bezier特征多边形各控制顶点的坐标值,并
13、输入计算机进行交互的几何设计,调整特征多边形顶点的位置,直到得出满意的结果为止。用控制多边形表示的Bezier曲面用控制多边形定义的Beizer曲线第28页/共50页(1)Bezier曲线定义在空间给定n+1个控制顶点Pi(i=0,1,n),则称下列参数表示的曲线为n次Bezier曲线。称为伯恩斯坦基函数(Bernstein Basis)。一般称折线为P(t)的控制多边形;称各点为P(t)的控制顶点。其中:第29页/共50页 Bezier曲线表达式是由控制多边形顶点位置矢量与Bernstein基函数线性组合(插值)得到的。在多数教科书中Bezier曲线表示为:其中:Vi为控制顶点,u为曲线参数
14、。第30页/共50页1)一次Bezier曲线一次Bezier曲线由两个控制顶点确定。此时:n=1这是一条连接P0和P1的直线段。相应的曲线表达式为:第31页/共50页一次一次Bezier曲线的几何推导曲线的几何推导第32页/共50页2)二次Bezier曲线 二次Bezier曲线由三个控制顶点确定。对应于一条抛物线。此时,n=2相应的曲线表达式为第33页/共50页二次二次Bezier曲线的几何推导曲线的几何推导第34页/共50页 3)三次Bezier曲线常用的三次Bezier曲线,由4个控制顶点确定,此时n=3相应的Bezier 曲线为与其对应的4个Bernstein基函数为:矩阵表达式为:第3
15、5页/共50页由同学们课后自己完成。三次Bezier曲线的几何推导 四次Bezier曲线的几何推导?第36页/共50页(2)Bezier曲线的程序设计实际应用的主要是三次Bezier曲线。利用它的参数表达式在区间(0,1)内取多个值,例如100,计算出这100个值对应的坐标点,依次连接这些点就得到一条Bezier曲线。为程序设计方便,改写曲线的表达式为:第37页/共50页提示:再添加一个z 坐标,就可得到空间Bezier曲线。第38页/共50页(3)Bezier曲线的性质在Bernstein基函数中,n为基本曲线的次数,i为基函数的序号。1)正性(非负性):2)权性:3)对称性:4)导数性质:
16、5)递推性质:Bernstein基函数图形(n5)由排列组合和导数运算规律可以推导出Bernstein基函数的性质:第39页/共50页Bezier曲线的一些性质:1)端点性质l 曲线经过特征多边形的首末点l 曲线P(t)在P0点与边P0P1相切,在 Pn 点与 相切2)对称性 由Bernstein基函数的对称性可知,控制点的次序完全颠倒过来后,曲线的形状不变,但走向相反。这表明,同一特征多边形定义的Bezier曲线是惟一的。Bernstein基函数图形(n5)第40页/共50页3)凸包性 P(t)是P0,P1,Pn凸线性组合。Bezier曲线完全被包在其特征多边形的凸包内。第41页/共50页5
17、)交互能力4)几何不变性由给定控制顶点所确定的Bezier曲线的形状与坐标系的选取无关。几何不变性对几何图形来说是一种很重要的性质。在计算机图形学中经常要作坐标变换,如果同一表示式在不同坐标系下表示不同的曲线,则会给图形变换带来很多不便之处。控制多边形P0P1Pn大致地勾画出Bezier曲线P(t)的形状。要改变P(t)的形状,只要改变P0,P1,Pn的位置即可。第42页/共50页6)变差减小性7)保凸性如果Bezier曲线P(t)的控制多边形P0P1Pn是一平面图形,则该平面内的任意直线与P(t)的交点个数不多于该直线与控制多边形P0P1Pn交点的个数,这一性质称为变差减小性。如果平面上的凸
18、控制多边形能导致所生成的曲线为凸曲线,则称这个曲线生成的方法具有保凸性。将Bezier曲线控制多边形的终点与起点连起来,如果这样形成一个闭的凸多边形,则相应的Bezier曲线是一个凸的平面曲线。此性质说明Bezier曲线比控制多边形所在的折线更光顺。第43页/共50页(4 4)BezierBezier曲线的拼接与反算曲线的拼接与反算Bezier曲线的次数是由其控制顶点确定的。常用的三次Bezier曲线由四个控制顶点确定。多控制点(n4)的三次Bezier曲线存在着几条曲线的拼接问题,其关键问题是如何保持拼接处的连续性。参数连续:切矢同向且模长相等。几何连续:切矢同向。1)拼接不同的问题在连接点
19、处对连续性有不同的要求,常用到的有以下几种:第44页/共50页设:P(t)是Pi(i=0,1,2,3)确定的三次Bezier曲线;Q(t)是Qi(i=0,1,2,3)确定的三次Bezier曲线。P3=Q0,若满足条件:0=t=1则两条曲线至少保证G0连续。第45页/共50页根据以上条件,可以调整P(t)和Q(t)这两段曲线,使得在连接点处达到一阶几何或导数连续:步骤1:平移多边形使Q0与P3重合。步骤2:围绕Q0转动多边形使与平行且同向(或模长相等)。若两曲线在连接点达到一阶导数连续,则满足条件:即亦即,P2、P3(Q0)和Q1共线,且P2、Q1在P3的异侧。第46页/共50页所谓曲线控制顶点
20、的反算是指由曲线上的一系列点(称之为型值点)反求出该曲线的一系列控制顶点的过程。如果给定 n+1个型值点:要求一系列控制点,由这些控制点定义的一条Bezier曲线通过已知的型值点,这与平常给定控制点求型值点的过程恰好相反。2)反算Knotpoints:Pole:1Defining points:+112345123Segment 1由pole 1 pole 4描述Segment 2由pole 2 pole 5描述+节点控制点型值点第47页/共50页以三次以三次BezierBezier为例:为例:现在已知该曲线上一系列型值点:Q0、Q1、Q2、Q3,需要求出控制顶点P0、P1、P2、P3。第48页/共50页设所求的控制点为,它定义的Bezier曲线为P(t),取t=i/nt=i/n分别与型值点Qi(i=0,1,2n)对应,满足,于是注意:参数t的取法不一样,得到的控制点列也不一样,由于这些点都逼近Bezier曲线,但逼近的精度有所不同,即反求的解不唯一。第49页/共50页感谢您的观看。第50页/共50页