《33曲线cadcam.ppt》由会员分享,可在线阅读,更多相关《33曲线cadcam.ppt(77页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第 页页13.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3.3 曲线和曲面的曲线和曲面的CAD 机械设计中常常碰到有一定曲线和曲面的零件需要设计和加工,例如设计飞机机翼、汽车车身、水轮机转子、船体外形等。它们称为自由曲线(面),工工程上把形状比较复杂、不能用二次方程描述的曲线和程上把形状比较复杂、不能用二次方程描述的曲线和曲面称为自由曲线和自由曲面曲面称为自由曲线和自由曲面。怎样在计算机中设计和绘制这些自由曲线(面)是本章研究的内容。第第 页页23.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回
2、返回】【结束结束】【首页首页】本节内容本节内容3.3.1 3.3.1 曲线的参数表示曲线的参数表示3.3.2 3.3.2 BezierBezier曲线曲线3.3.3 3.3.3 B B样条曲线样条曲线3.3.4 3.3.4 NURBSNURBS曲线曲线3.3.5 3.3.5 曲面曲面第第 页页33.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】曲线的数学表示曲线的数学表示显式表示隐式表示参数表示就是将曲线或曲面上点的坐标表示为某些参数的函数。如自由曲线的参数表示形式为:x=x(u),y=y(u),z=z(u)为便于计算机处理,曲线上
3、一点常用矢量表示:P(t)=x(u),y(u),z(u)对于一条平面曲线,可显式表示为:y=f(x)对于一条平面曲线,可隐式表示为:F(x,y)=0第第 页页43.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】参数曲线示意图参数曲线示意图xyzP0u=0P1u=1P1P0o P(u)曲线的端点在u=0,u=1处,曲线上任意一点的位置矢量(即其坐标)可用矢量P(t)=x(u),y(u),z(u)表示。第第 页页53.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】参数表示法的
4、优点:参数表示法的优点:p参数表示的的曲线曲面与坐标系的选取无关。p参数方程将自变量和因变量分开,使得参数变化对各个因变量的影响可以明显地表示出来p参数表达式中使用切矢来代替非参数方程中的斜率,便于处理斜率无穷大的问题。p参数表达式中一般都有明确的定义域,因此不需要另设其他参数来定义其边界。p易于用矢量和矩阵表示几何量,便于计算机的计算与编程。第第 页页63.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】几几何何连连续续性性是指曲线或曲面在连接处的连接状态。通常使用符号C(i)来描述连续性:若两段曲线有一端点位置相同,称它们在连接处
5、位置连续,也称之为C(0)连续。若两段曲线在连接处切线是连续的,则称为一阶导数连续,也称之为C(1)连续。如果曲线在连接处曲率是连续的,则称为二阶导数连续,也称之为C(2)连续。基本术语基本术语第第 页页73.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】基本术语基本术语光滑从数学意义上讲,光滑是指曲线或曲面具有至少一阶的连续导数。光顺不仅要求曲线或曲面具有至少二阶的连续导数,而且还要满足设计要求。所谓设计要求应视具体情况而定,如一般机械零件外形只要求二阶导数连续就够了,而飞机船舶的外形不但要二阶导数连续,而且曲线的凹凸走向要满足功
6、能要求。第第 页页83.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】基本术语基本术语插值给定一组精确的数据点,要求构造一个函数使之严格地依次通过全部数据点,且满足光顺要求。这种方法称为插值法。逼近对于一组数据点,要求构造一个函数,使之在整体上最接近这些数据点而不必通过全部数据点,也就是使所构造的函数与所有数据点的误差在某种意义上最小。这就是所谓逼近法。拟合在曲线和曲面的设计过程中,用插值或逼近的方法,在允许的范围内贴近或通过给定的型值点,从而使构造的曲线或曲面光滑连续。第第 页页93.3 3.3 曲线和曲面的曲线和曲面的CADCA
7、D【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三、曲线CAD的处理方法给出一系列离散点的空间坐标,将上述离散点分段并选择某个拟和函数模式计算分段内离散点之间任意点的坐标。从而描绘出曲线。目前常用的几种拟和函数都是采用参数量形式的多项式函数,大多为三次多项式,不同类型曲线具有不同的应用特性。因为曲线段的低次表示方法不能保证曲线段在连接点上位置和斜率的连续性,同时也不能保证曲线段的端点经过一些特定的点。幂次太高又导致计算量增大。第第 页页103.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3.3.2 Bezier曲线曲
8、线样条曲线精确通过给定点,但就外型的几何设计而言,并不要求曲线严格通过所有的原始型值点,只要求外形美观、符合设计要求。从1962年,法国雷诺汽车公司工程师Bezier开始研究在“逼近”意义上的曲线曲面的参数表示法,之后建立了一种自由曲线曲面的设计方法,被称为Bezier方法。第第 页页113.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】Bezier曲线曲线Bezier曲线的形状是通过一组多边折线(也称为Bezier多边形或特征多边形)的各顶点唯一地定义出来的,在该多边折线的各顶点中,只有第一点和最后一点是在曲线上的,其余的顶点则用
9、来定义曲线的导数、阶次和形状。第一条边和最后一条边则表示出了曲线在起点处和终点处的切线方向,即第一条边和最后一条边分别和曲线在起点和终点处相切。曲线的形状趋向于多边折线的形状。改变多边折线的顶点位置和曲线形状的变化有着直观的联系(如图)。第第 页页123.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】Bezier曲线示例第第 页页133.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】一、一、Bezier曲线表达式曲线表达式基本思想:Bezier构造曲线是由曲线的两个端点和
10、若干个不在曲线上的点来唯一确定曲线的形状。这两个端点和若干个点被称为Bezier特征多边形的顶点(也叫控制点)。设给定空间特征多边形的n+1个顶点Pi(i=0,1,n),则定义n次Bezier曲线的矢量函数为:ni=0P(u)=PiBi,n(u)0u1第第 页页143.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】表达式中各参数的意义:参数u的取值范围为0,1,n是多项式的次数,也是曲线的次数。通常用n+1个顶点确定曲线为n次曲线。Pi是第i个顶点的坐标。Bi,n(u)混比函数(伯恩斯坦基函数),反映第i个顶点对拟合点的影响,它定义
11、为:Bi,n(u)=ui(1-u)n-i=Cinui(1-u)n-in!i!(n-i)!第第 页页153.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三次三次Bezier曲线曲线对于三次Bezier曲线,n=3,有4个控制点P0、P1、P2、P3,则:其中:3i=0P(u)=PiBi,3(u)B0,3(u)=ui(1-u)n-i=Cinui(1-u)n-i=u0(1-u)3-0=(1-u)3n!i!(n-i)!3!0!(3-0)!第第 页页163.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】
12、【结束结束】【首页首页】Bezier曲线的矩阵形式:则:P(u)=B0,3(u)B1,3(u)B2,3(u)B3,3(u)=u3u2u1-13-313-630-33001000第第 页页173.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】二、二、Bezier曲线的性质曲线的性质v端点特性v凸包性v几何不变性v全局控制性第第 页页183.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】1、端点特性Bezier曲线的起点和终点分别是特征多边形的第一个顶点和最后一个顶点。在曲线
13、的起点处,u=0,代入公式得到:P(0)=P0同理,在曲线的终点处,u=1,推出:P(1)=P1曲线在起点和终点处的切线分别是特征多边形的第一条边和最后一条边,且切矢的模长分别为相应边长的n倍。推导(略)第第 页页193.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】2、凸包性对区间0,1上的任一值u,点P(u)必须落在由特征多边形顶点所张开形成的凸包内。即当特征多边形为凸时,Bezier曲线也是凸的;当特征多边形有凹有凸时,其曲线的凸凹形状与之对应,且在其凸包范围内。如图所示。第第 页页203.3 3.3 曲线和曲面的曲线和曲面的
14、CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3、几何不变性由Bezier曲线的定义知,曲线的形状由特征多边形的顶点Pi(i0,l,n)唯一确定,与坐标系的选取无关。这就是几何不变性。因此在几何变换中,只要直接对特征多边形的顶点变换即可,而无需对曲线上的每一点进行变换。第第 页页213.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】4、全局控制性由Bezier曲线表达式可知,当修改特征多边形中的任一顶点,均会对整体曲线产生影响,因此Bezier曲线缺乏局部修改能力。第第 页页223.3 3.3 曲线和曲面的
15、曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三、三、Bezier曲线的拼接曲线的拼接工程应用中,一般采用三次Bezier曲线拼接来设计图形,而不是采用高阶曲线。为使连接处的曲线光滑连续,控制点的选择应满足一定条件。第第 页页233.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】Bezier曲线段连续条件:设有两Bezier曲线段P(u)和Q(u),其控制点分别为P0,P1,P2,P3和Q0,Q1,Q2,Q3。1)P3=Q0,则P(u)和Q(u)在P3(Q0)处位置连续。2)P3=Q0,且P2,
16、P3(Q0),Q1在一条直线上(P2、Q1在P3(Q0)两侧),则P(u)和Q(u)在P3(Q0)处一阶导数连续。3)特征多边形12、23、01、12四条边共面,则P(u)和Q(u)在P3(Q0)处二阶导数连续。第第 页页243.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】四、四、Bezier曲线的应用曲线的应用Bezier曲线用于设计各种平面图形。如花瓶外形,特征点的设计如图(注意拼接问题)。第第 页页253.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3.3.3B
17、样条样条(Bspline)曲线曲线Bezier曲线是目前计算机辅助几何设计中的一种主要方法。但存在以产主要缺点:确定了多边形的顶点数,也就决定了所定义的Bezier曲线的阶次,因此,无灵活性。若采用分段三次Bezier曲线,须有附加条件。缺乏局部修改外形的能力,改变某一控制点会影响到整个曲线段的形状。n较大时,特征多边形的边数较多,则多边形对曲线的控制减弱。第第 页页263.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】样条曲线的产生 为克服上述缺点,1973年,RFRiesenfeld在研究Bezier曲线的基础上,用B样条基函数
18、(分段混合函数)替换了伯恩斯坦基函数,构造了样条曲线。样条曲线除了保持了原Bezier曲线所具有的优点外,还具有对曲线局部修改,对特征多边形更逼近,多项式阶次较低等优点。P0P1P2P7P6P5P4P3P9P8P10第第 页页273.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】一、样条曲线的表达式若给定m+n+1(n为阶次、m为最大段号)个顶点Pi(i=0,1,2,m+n),将多边折线分成m+1段,每段多边折线称为B特征多边形,构成的第i段样条曲线为n次多项式(i=0,1,2,m)为:(如图)P i,n(u)=P i+k F k,
19、n(u)其中,F k,n(u)为n次B样条基函数:F k,n(u)=(-1)jCn+1(u+n-k-j)n0u1k=0nn-kj=01n!j第第 页页283.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三次三次B-样条曲线样条曲线因为B-样条曲线是分段组成的,所以特征多边形的顶点对曲线的控制灵活直观。由于整条B-样条曲线能达到n-1阶连续,而在工程实际应用中,二阶连续的曲线已能使工程问题的解决相当满意,所以在实际应用中。二次B-样条曲线和三次B-样条曲线用得较为广泛。高于三次的B-样条曲线,由于计算过于复杂、且也不一定适合于一般的
20、工程的应用,所以用得较少。第第 页页293.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三次B-样条曲线表达式对于三次B-样条曲线,n=3,k=0,1,2,3。所以,三次B样条曲线的表达式为:Pi,3(u)=Pi+kFk,3(u)=F0,3(u)Pi+F1,3(u)Pi+1+F2,3(u)Pi+2+F3,3(u)Pi+3 3k=0i=0,1,2,m第第 页页303.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】B样条基函数分别为:推导过程F0,3(u)=(-u3+3u2
21、-3u+1)/6F1,3(u)=(3u3-6u2+4)/6F2,3(u)=(-3u3+3u2+3u+1)/6F3,3(u)=u3/6第第 页页313.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】所以,三次B样条曲线的表达式为:Pi,3(u)=F0,3(u)Pi+F1,3(u)Pi+1+F2,3(u)Pi+2+F3,3(u)Pi+3=u3u2u1三次B-样条曲线表达式i=0,1,2,mPi+0 Pi+1 Pi+2 Pi+3 16-13-313-630-30301000第第 页页323.3 3.3 曲线和曲面的曲线和曲面的CADCAD
22、【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】二、B样条曲线的性质端点特性连续性凸包性几何不变性直观性局部可调性第第 页页333.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】用B0,B1,B2,B3分别表示分段曲线的B特征多边形的顶点,三次B样条曲线的表达式可写成:P(u)=u3u2u11、端点特性B0 B1 B2 B3 16-13-313-630-30301000第第 页页343.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】即曲线段的起点P(0)位于B
23、0B1B2底边B0B2的中线B1Bm上,且距B1点的1/3处(如图)。终点P(1)情况与起点对称。3P(0)=2B1(B0+B2)/2 3B1-3P(0)=B1-(B0+B2)/2B1-P(0)=(B1-(B0+B2)/2)/3第第 页页353.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】P(u)=3u22u10P(u)=u2u1P(u)=u1B0 B1 B2 B3 12-13-312-420-1010B0 B1 B2 B3 -13-311-210B0 B1 B2 B3 16-13-313-630-30301000第第 页页363
24、.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】曲线段的起点P(0)处的切向矢量P(0)平行于B0B1B2的底边B0B2,且长度为其1/2。该点的二阶导数P”(0)等于中线矢量B1Bm的2倍(如图)。终点P(1)情况与起点对称。第第 页页373.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】如果在B特征多边形上增加一个新的顶点B4,就增加了由B1B2B3B4构成的一个新的B样条曲线段。因为新一曲线段起点的有关数据和上一曲线段的终点的有关数据都只与B1B2B3有关,故该两段
25、曲线在连接处的位置矢量、一阶切向矢量和二阶切向矢量都相等,即三次B样条曲线达到了二阶导数连续。(如图)2、连续性第第 页页383.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3、直观性B-样条曲线比Bezier曲线更逼近于控制点连线折线(特征多边形)。第第 页页393.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】4、局部可调性改动特征多边形上的一个顶点,至多只影响以该点为中心的邻近n+1段曲线(对三次B-样条曲线为该点两边各两段)。P0P1P2P3P3P4P5P6P7
26、第第 页页403.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三、三次B样条曲线的特殊情况B样条曲线是一种非常灵活的曲线,曲线的局部形状受相应顶点的控制很直观。这种顶点控制技术如果运用得当,可以使整个B样条曲线在某些部位满足一些特殊的技术要求,在实际的曲线设计时,采用这些特殊手段进行处理可以达到理想的效果。下面简要介绍几种常用的处理技术。第第 页页413.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】1、三顶点共线三顶点共线是三次B样条曲线制造拐点的一种技巧。B0B1B
27、2B32、四顶点共线利用特征多边形的4顶点共线,可以在B样条曲线上构造一段直线。这说明了B样条曲线也可以由直线和曲线共同组成。B0 B1 B2 B3第第 页页423.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3、两顶点重合两顶点重合可以使B-样条曲线的一段和B特征多边形相切,也可得到一个拐点。B0B1B2B34、三顶点重合若B特征多边形中有三顶点重合,B样条曲线的端点与该特征多边形的三点重合。B0B1B2 B3 B4B5B6第第 页页433.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结
28、束结束】【首页首页】四、B样条曲线控制顶点的反算所谓反算就是给定一组型值点Qi(i=1,2,n),要求出三次B样条曲线的控制顶点P(i=0,1,n+1)从而决定一条样条曲线,使其通过这一组型值点Qi。P1P2PnPn-1Pn-2P3P0P0+1Q1Q3Q2QnQn-1Qn-2第第 页页443.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】由三次B样条曲线的顶点特性:(Pj-1+4Pj+Pj+1)/6=Qj(j=1,2,n)假设P1=Q1,Pn=Qn,可构成N个方程组成的方程组:为保证P1=Q1,Pn=Qn,需增加两个附加顶点P0,P
29、n+1,且满足:P0P1=P1P2,PnPn+1=Pn-1Pn第第 页页453.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】利用三次B-样条曲线可以构造出各种形状的曲线。(源程序)五、三次B样条曲线的应用1、2、345、67、89、1011、121314、1516、1718、1920第第 页页463.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三次B样条曲线示例第第 页页473.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束
30、结束】【首页首页】3.3.4NURBS曲线NURBS(Non-UniformRationalBspline)曲线即非均匀有理B样条曲线,既能描述自由曲线,又能精确表示二次曲线。B样条曲线是NURBS曲线的子集。NURBS曲线不仅具有B样条曲线的优越性,而且可以精确地表示二次曲线,是目前最为理想的一种参数曲线表示方法。第第 页页483.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】一、一、NURBSNURBS曲线的定义曲线的定义 一条由n+1个控制顶点Pi(i0,1,n)构成的k次NURBS曲线可以表示为一分段有理多项式函数:式中:=
31、称为NURBS曲线有理基函数;Pi表示特征多边形的控制点;wi是控制点的权因子,分别与控制顶点相联系。为由节点矢量决定的k次B样条基函数。第第 页页493.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】节点权因子节点权因子 节点权因子能影响到u i,u i+k+1区间内的曲线形状,具有局部性。wi0时,=0,表示P(u)点在B处,可以认为该节点的位置对曲线的形状没有影响;wi1时,为一定值,表示P(u)点在N处;wi 时,=1,表示P(u)点在Pi处;其它,P(u)点为一动点d;Wi=0WiPi-3Pi-2Pi-1PI+1PI+2W
32、i=1当当所所有有权权因因子子均均为为l时时,NURBS曲曲线线就就成成为为B样样条曲线。条曲线。第第 页页503.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】3.3.5曲面曲面工程中,常常会碰到复杂外形的设计,如飞机、汽车、船舶、模具等,传统的处理方法是用一组或几组相互平行的平面去截切曲面,然后画出其截交线来表示这个曲面,如船体用纵剖线、横剖线和水线表示,山区用等高线表示。此方法绘图量大、不精确、不直观。第第 页页513.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】
33、曲面的CAD处理方法 CAD中,曲面的处理方法和曲线类似,首先,建立数学表达式(可以很容易将参数曲线段拓展为参数曲面片。因为无论是前面的Bezier曲线还是B样条曲线,它们都是由特征多边形控制的。而曲面是由两个方向(比如u和v)的特征多边形(即特征多面体)来决定,)然后用计算机进行处理。第第 页页523.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】一、曲面的参数表示法参考曲线的参数表示,曲面可以用双参数向量函数来表示。设曲面的两个参数为u,w0,1,则双变量函数P(u,w)表示一个曲面片,即:P(u,w)=x(u,w)y(u,w)
34、z(u,w)当u,w在定义域内变动时,P点的轨迹即为曲面。xyzP(u,w)P(1,0)P(1,1)P(0,0)P(0,1)第第 页页533.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】二、Bezier曲面为n m次Bezier曲面。1、定义:给定(n+1)(m+1)个空间点列Pij(i0,1,n;j0,1,m)称nm次参数曲面第第 页页543.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】其中:为n次伯恩斯坦基函数;为m次伯恩斯坦基函数;Pij 为特征多面体各顶点的位
35、置向量,共为(m1)(n1)个顶点。逐次用直线段连接空间点列Pij(i0,1,n;j0,1,m)中的相邻两点构成的空间网格称为特征多边形网格。第第 页页553.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】2、双三次Bezier曲面 为保证网格对Bezier曲面的有效控制,m、n不宜超过5。最常用的是m=n=3的双三次Bezier曲面即:P(u,w)=(1-u)3 3u(1-u)2 3u2(1-u)u3或写成:P(u,w)=UNP NT WT其中:U=u3 u2 u 1W=w3 w2 w 1 P00 P01 P02 P03P10 P
36、11 P12 P13P20 P21 P22 P23P30 P31 P32 P33(1-w)3 3w(1-w)2 3w2(1-w)w3角点位置矩阵N=NT-1 3 -3 13 -6 3 0-3 3 0 01 0 0 0注意第第 页页563.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】双三次Bezier曲面片由图可见,双三次Bezier曲面片与对应的特征网格的四个角点P00、P03、P30、P33重合;特征网格四边的12个控制点定义了四条Bezier曲线,即曲面片的边界线,中央四个控制点与边界曲线无关,但控制着曲面片的形状。第第 页页
37、573.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三、B-样条曲面B样条曲面的数学表达式为:其中,Pij(i0,1,n;j0,1,m)定义曲面片的顶点的位置向量即(n+1)(m+1)个顶点。F及F是参数u、w方向上的B样条基函数。逐次用直线段连接空间点列Pij(i0,1,n;j0,1,m)中的相邻两点构成的空间网格称为特征网格。FF第第 页页583.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】双三次B样条曲面:若m=n=3,则可得双三次B样条曲面:=UMP MT W
38、T其中:U=u3 u2 u 1W=w3 w2 w 1FF第第 页页593.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】B样条曲面图例第第 页页603.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】与三次B样条曲线相似,双三次B样条曲面的优点是解决了曲面片之间的连接问题。只要B特征网格沿某一方向延伸一排,如i0,1,2,3,4,j0,l,2,3,则i1,2,3,4,j0,l,2,3可决定另一张曲面片。并保证了二者之间的连续性。B样条曲面的连续性P04P14P24P34第第
39、 页页613.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】四、NURBS曲面NURBS曲面的定义:其中,Ni,k、Nj,l分别为k次和l次B样条基函数,wi为与控制顶点相关联的权因子。Pij是特征网格控制点列。第第 页页623.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】NURBS曲线曲线(面面)优点:优点:对标准的解析形状和自由曲线(面)提供了统一的数学表示,无论是解析形状还是自由格式的形状均有统一的表示参数,便于工程数据库的存取和调用。可以通过控制点和权因子来灵活
40、地控制曲线(面)形状。对插入节点、修改、分割、几何插值等的处理能力较强。NURBS在比例、旋转、平移、剪切以及平行、透视投影变换下是不变的。有理及非有理Bezier、非有理B样条曲线曲面均是NURBS的特例。第第 页页633.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】NURBS曲线曲线(面面)有待解决的问题:有待解决的问题:比一般的曲线、曲面定义方法更费存储空间和处理时间权因子选择不当会造成形状畸变;对搭接、重叠形状的处理相当麻烦;反求曲线、曲面上点的参数的这类算法还不太稳定。第第 页页643.3 3.3 曲线和曲面的曲线和曲面
41、的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】P0P1P2P7P6P5P4P3P9P8P10P0P1P2P3P1P2P3P4P2P3P4P5P3P4P5P6P4P5P6P7P5P6P7P8P6P7P8P9P7P8P9P10样条曲线示例:B特征多边形:第第 页页653.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三次B样条曲线几何特征第第 页页663.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】F0,3(u)=(-1)j C(u+3-0-j)
42、3 =(u+3)3-(u+2)3+(u+1)3-u3=(u+3)3-4(u+2)3+6(u+1)34u3=(-u3+3u23u+1)4!0!4!F0,3(u)推导过程:由:F k,n(u)=(-1)jCn+1(u+n-k-j)n0u1,k=0,1,n13!3j=0j416 4!1!3!4!2!2!4!3!1!16(a+b)3=a3+3a2b+3ab2+b316n-kj=01n!j第第 页页673.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】习题:给定控制点,画出B样条曲线、78(1)(2)第第 页页683.3 3.3 曲线和曲面的
43、曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】参数表示法的优点:参数表示法的优点:如果通过一系列型值点拟合一条曲线或由一系列控制点(或特征点)定义一条曲线,曲线的形状仅取决于这些点本身之间的关系,而与这些点与其所在坐标系的关系无关。x2y2y1x1o1o2第第 页页693.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】#include#include#include#include#include#definesmoveto(x,y)moveto(50+x,50+y)#defineslineto
44、(x,y)lineto(50+x,50+y)#defineMAX100main()intxsMAX,ysMAX,ii,points,k,ixx,iyy,yss;intgdriver=DETECT,gmode,errorcode,i,j,jj;floatx4,y4,deltat,t,n1,n2,n3,n4;charms20,stri4,msg=B-spline,infname10;FILE*fp;if(fp=fopen(c:tcbinboat1.dat,r)=NULL)printf(Errordatafilename!%sn,infname);exit(1);三次B-样条曲线源程序:第第 页页7
45、03.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】initgraph(&gdriver,&gmode,c:tcbgi);errorcode=graphresult();if(errorcode!=grOk)/*anerroroccurred*/printf(Graphicserror:%sn,grapherrormsg(errorcode);printf(Pressanykeytohalt:);getch();exit(1);/*returnwitherrorcode*/printf(maxX,Yis%d,%d,getmaxx()
46、,getmaxy();/getch();cleardevice();settextstyle(0,0,1);settextjustify(LEFT_TEXT,CENTER_TEXT);moveto(300,300);outtext(msg);fscanf(fp,%d;n,&points);for(j=0;jpoints;j+)fscanf(fp,%d%d%d;,&jj,&xsj,&ysj);第第 页页713.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】for(j=0;jpoints-3;j+)for(jj=0;jj4;jj+)xj
47、j=xsj+jj;yjj=ysj+jj;for(i=0;i=10;i+)t=float(i)/10.0;n1=(1-t)*(1-t)*(1-t)/6.0;n2=(3.0*t*t*t-6.0*t*t+4.0)/6.0;n3=(3.0*t*(1.0+t-t*t)+1.0)/6,0;n4=t*t*t/6.0;ixx=n1*x0+n2*x1+n3*x2+n4*x3;iyy=n1*y0+n2*y1+n3*y2+n4*y3;if(j=0&i=0)setcolor(15);smoveto(ixx,iyy);elseslineto(ixx,iyy);第第 页页723.3 3.3 曲线和曲面的曲线和曲面的CAD
48、CAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】fscanf(fp,%d;n,&points);for(j=0;jpoints;j+)fscanf(fp,%d%d%d;,&jj,&xsj,&ysj);setcolor(1);smoveto(xs0,ys0);for(i=1;ipoints;i+)slineto(xsi,ysi);for(i=0;ipoints;i+)yss=ysi-10;smoveto(xsi,yss);itoa(i+1,stri,10);setcolor(15);outtext(stri);getch();closegraph();第第 页页733.3 3.
49、3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】Boat.dat数据文件23;15050;25050;35050;4320120;554090;654090;7530120;8530120;9510140;10510140;11500170;12500170;13320220;14130180;15130180;16130160;17130160;18150160;19150160;20120100;215050;225050;235050;12;15050;2320100;354090;4530120;5510140;6500170;732
50、0220;8130180;9130160;10150160;11120100;125050;第第 页页743.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】三次B-样条曲线源程序:第第 页页753.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】第第 页页763.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结束结束】【首页首页】第第 页页773.3 3.3 曲线和曲面的曲线和曲面的CADCAD【上页上页】【下页下页】【返回返回】【结