第6讲 曲线曲面基础_第1页
第6讲 曲线曲面基础_第2页
第6讲 曲线曲面基础_第3页
第6讲 曲线曲面基础_第4页
第6讲 曲线曲面基础_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

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

文档简介

1、CAD技术及应用第6讲 自由曲线曲面基础华中科技大学CAD中心吴义忠6. 曲线曲面基础16.1 认识曲线与曲面认识曲线与曲面6.2 曲面造型的发展历程曲面造型的发展历程6.3 曲线曲面的参数表达曲线曲面的参数表达6.4 Bezier曲线曲线6.5 B样条曲线样条曲线6.6 NURBS曲线曲线工业产品的形状大致可分为两类:工业产品的形状大致可分为两类: 一类是仅由初等解析曲面(例如平面、圆柱面、圆锥面、球面、圆环面等)组成,大多数机械零件属于这一类,可以用画法几何与机械制图的方法完全清楚表达和传递所包含的全部形状信息。 第二类是不能由初等解析曲面组成,而以复杂方式自由变化的曲线曲面即所谓自由型曲

2、线曲面组成,例如飞机、汽车、船舶的外形零件。这一类形状单纯用画法几何与机械制图是不能表达清楚的。 自由曲线和曲面因不能由画法几何与机械制图方法表达清楚,成为工程师们首要解决的问题。人们一直在寻求用数学方法唯一定义自由曲线和曲面的形状。 曲面造型(Surface Modeling)是计算机辅助几何设计 (Computer Aided Geometric Design,CAGD)和计算机图形学的一项重要内容,主要研究在计算机图象系统的环境下对曲线曲面的表示、设计、显示和分析。 它起源于汽车、飞机、船舶、叶轮等的外形放样工艺,由Coons、Bezier等大师于二十世纪六十年代奠定其理论基础。 经过三

3、十多年的发展,曲面造型现在已形成了以有理B样条曲面(Rational B-spline Surface)为基础的参数化特征设计和隐式代数曲面(Implicit Algebraic Surface)表示这两类方法为主体,以插值(Interpolation)、逼近(Approximation)这二种手段为骨架的几何理论体系。6. 曲线曲面基础16.1 认识曲线与曲面认识曲线与曲面6.2 曲面造型的发展历程曲面造型的发展历程6.3 曲线曲面的参数表达曲线曲面的参数表达6.4 Bezier曲线曲线6.5 B样条曲线样条曲线6.6 NURBS曲线曲线6.2 曲线曲面发展历程 1963 1963年美国波音

4、飞机公司的佛格森(年美国波音飞机公司的佛格森(FergusonFerguson)最早引入参数三次最早引入参数三次曲线,将曲线曲面表示成参数矢量函数形式,构造了组合曲线和由四曲线,将曲线曲面表示成参数矢量函数形式,构造了组合曲线和由四角点的位置矢量、两个方向的切矢定义的佛格森双三次曲面片。角点的位置矢量、两个方向的切矢定义的佛格森双三次曲面片。 1964 1964年,美国麻省理工学院的孔斯(年,美国麻省理工学院的孔斯(CoonsCoons)用封闭曲线的四条边界用封闭曲线的四条边界定义一张曲面。同年,舍恩伯格(定义一张曲面。同年,舍恩伯格(SchoenbergSchoenberg)提出了参数样条曲

5、线、提出了参数样条曲线、曲面的形式。曲面的形式。 1971 1971年,法国雷诺(年,法国雷诺(RenaultRenault)汽车公司的贝塞尔(汽车公司的贝塞尔(BezierBezier)发表发表了一种用控制多边形定义曲线和曲面的方法。了一种用控制多边形定义曲线和曲面的方法。 1974 1974年,美国通用汽车公司的戈登(年,美国通用汽车公司的戈登(GordenGorden)和里森费尔德和里森费尔德(RiesenfeldRiesenfeld)将将B B样条理论用于形状描述,提出了样条理论用于形状描述,提出了B B样条曲线和曲面。样条曲线和曲面。 nikiiuNu0,)()(PC00/00 )(

6、)()()()( 0 1)(111, 111,10,kttuNutttuNtuuNtutuNikikikiikikiikiiii其它若u10101010101010Ni+3,3(u)Ni,3(u)Ni+1,3(u)Ni+2,3(u)titi3ti1ti2ti4ti5ti6ti7 1975 1975年,美国锡拉丘兹(年,美国锡拉丘兹(SyracuseSyracuse)大学的佛斯普里尔大学的佛斯普里尔(VersprillVersprill)提出了有理提出了有理B B样条方法。样条方法。 80 80年代后期皮格尔(年代后期皮格尔(PieglPiegl)和蒂勒(和蒂勒(TillerTiller)将有理

7、将有理B B样条发展样条发展成非均匀有理成非均匀有理B B样条样条(NURBS)(NURBS)方法,并已成为当前自由曲线和曲面描述方法,并已成为当前自由曲线和曲面描述的最广为流行的技术。的最广为流行的技术。00/00 )()()()()( 0 1)(111, 111,10 ,kttuNutttuNtuuNtutuNikikikiikikiikiiii其它若minjjiminjjijidp0000)()()()()(vNuNvNuNvu,l j,ki,l j,ki,非均匀有理非均匀有理B B样条(样条(NURBSNURBS)成为当前大多数商用)成为当前大多数商用CADCAD软件系统的内部软件系统

8、的内部表达技术。表达技术。Solid Edge CATIAUG NXPro/EInventor6. 曲线曲面基础16.1 认识曲线与曲面认识曲线与曲面6.2 曲面造型的发展历程曲面造型的发展历程6.3 曲线曲面的参数表达曲线曲面的参数表达6.4 Bezier曲线曲线6.5 B样条曲线样条曲线6.6 NURBS曲线曲线曲线曲面的参数表示非参数表示有显式和隐式之分显式表示显式表示: :如曲面方程z=f(x,y),式中每个z值对应唯一的x、y值,该表示计算非常方便,但无法描述多值或封闭面,如球。 隐式表示隐式表示: :如曲面f(x,y,z)=0,这种表示不便于由已知的参量x,y计算z值- 1 = 0

9、曲线参数表示曲线参数表示 空间曲线上一点p的每个坐标被表示成参数u的函数: x=x(u), y=y(u), z=z(u)。 合起来,曲线被表示为参数u的矢函数: p(u) = x y z = x(u) y(u) z(u) 最简单的参数曲线是直线段,端点为P1、P2的直线段参数方程可表示为:P(t) = P1 + ( P2 - P1 )t t0, 1;参数表示优点1. 易于满足几何不变性的要求,可以对参数方程直接进行几何变换,节省计算量。曲线曲面表示的几何不变性是指它们不依赖于坐标系的选择或者说在旋转和平移变换下不变的性质3. 有更大的自由度来控制曲线、曲面的形状。例如:一条二维三次曲线的显式表

10、示为:只有四个系数控制曲线的形状。而采用二维三次曲线的参数表达式为:则有8个系数可用来控制此曲线的形状。dcxbxaxy23 1 , 0tbtbtbtbatatata) t (P4322314322312. 易于规定曲线、曲面的范围。参数表示优点(续)4. 易于处理多值问题和斜率无穷大的情形。5. 易于计算曲线、曲面上的点。而隐式方程需求解非线性或超越方程,另外,求导、等距的计算也被简化;6. 参数方程中,代数、几何相关和无关的变量是完全分离的,而且对变量个数不限,从而便于用户把低维空间中曲线、曲面扩展到高维空间去。这种变量分离的特点使我们可以用数学公式处理几何分量。 有关基本概念介绍位置矢量

11、位置矢量 p(t)切矢切矢 T=dp / dt主法矢主法矢: N=unit(dT/dc)曲率曲率k , 曲率半径曲率半径副法矢副法矢B、挠率、挠率dB/dc插值:插值:给定一组有序的数据点Pi,i=0, 1, , n,构造一条曲线顺序通过这些数据点,称为对这些数据点进行插值,所构造的曲线称为插值曲线。常用插值方法有线性插值、抛物线插值等。逼近:逼近:构造一条曲线使之在某种意义下最接近给定的数据点,称为对这些数据点进行逼近,所构造的曲线为逼近曲线。拟合:拟合:插值和逼近则统称为拟合(fitting)。光滑与光顺光滑与光顺化直平面 法平面 密切平面6. 曲线曲面基础16.1 认识曲线与曲面认识曲线

12、与曲面6.2 曲面造型的发展历程曲面造型的发展历程6.3 曲线曲面的参数表达曲线曲面的参数表达6.4 Bezier曲线曲线6.5 B样条曲线样条曲线6.6 NURBS曲线曲线Bezier曲线给定空间n+1个点的位置矢量Pi(i=0,1,2,n),则Bezier参数曲线上各点坐标的插值公式是: 其中,Pi构成该Bezier曲线的特征多边形,Bi,n(t)是n次Bernstein基函数,也称为调和函数: 三次Bezier曲线例如,由P0、P1、P2、P3四个控制点构成的控制多边形来构造 33,323,223, 133,0i3ii33, iuuBu13uuBu13uuBu1uB3 , 2 , 1 ,

13、 0iu1uCuB则三次Bezier曲线表示为: UMPPPPP00010033036313311uuuPPPPuBuBuBuBuBPuP321023T32103,33,23,13,03, i30ii 此时调和函数为: 上式展开表示为: 00001000440061060410104146414M三次Bezier曲线性质1. 端点性质 曲线过控制顶点的首末顶点。将u0和1分别代入表达式p(u)中可知p(0)=P0, p(1)=P3。 0p 2.切矢性质 曲线在首末两点相切于多边形的起、止边。对三次Bezier曲线求一阶导数: 2301PP31p,PP30p 1p 4.凸包性 即Bezier曲线

14、不会越出特征多边形的顶点所围成的凸包 3.对称性:M对称 将控制顶点反序仍可得到同样形状的曲线。Q0Q1Q2Q3Q0Q1Q2Q3三次Bezier曲线示例Bezier曲线的计算及绘制 在参数空间t0,1进行均匀插值,计算对应的坐标点,然后连接成线,这条线就是折线逼近的Bezier曲线 32103210210100321032102101003322103322103322120333221203y3y3yyB3y6y3yB3y3yByBx3x3xxA3x6x3xA3x3xAxAtBtBtBBtytAtAtAAtxytyt13tyt13tyt1tyxtxt13txt13txt1tx其中其中写成写成

15、编程实现编程实现: 给定的4个点返回的点集直线段数,显示精度 也可写成矩阵表达式,式中若求PX(t)的值,则取Pi的x坐标进行计算,同理求Py(t)、Pz(t)的值,具体如下: Px(t) B0,3(t) B1,3(t) B2,3(t) B3,3(t) P0 x P1x P2x P3x T Py(t) B0,3(t) B1,3(t) B2,3(t) B3,3(t) P0y P1y P2y P3y T Pz(t) B0,3(t) B1,3(t) B2,3(t) B3,3(t) P0z P1z P2z P3z T 注意:上式基函数的计算仅需一次,不必三次。Bezier曲线的绘制: 例如利用上面的计

16、算方法可分别求出 t0.0,0.05,0.10,0.15,0.95,1.0时的曲线上的点,依次连接相邻两点为直线段,即可得近似的曲线图形。任意次数Bezier曲线绘制/n次数,pts三维n+1个输入点,m+1离散点数目, ptsOut为输出点序列void mkBezier(unsigned int n, Point3D pts, unsigned int m, Point3D& ptsOut)for(int k=0; k=m; k+)float t = k * 1.0 / m; ptsOutk = 0, 0, 0;for(int i =0; i=n ; i+) ptsOutk.x +=

17、 ptsi.x * fact(n)/(fact(i)*fact(n-i) * ti * (1-t)(n-i); ptsOutk.y += ptsi.y * fact(n)/(fact(i)*fact(n-i) * ti * (1-t)(n-i); ptsOutk.z += ptsi.z * fact(n)/(fact(i)*fact(n-i) * ti * (1-t)(n-i);此处可改进求N!的递归算法unsigned int fact (unsigned int n) static vector Fact; /Fact = new int; static unsigned int num

18、= 0; if (n = 3 = 4对于开曲线,则首末点边界切矢可由用户随意交互给定对于封闭曲线,则首末的位置相同,且边界切矢方向相同,不需要指定边界条件补充时应注意:B样条曲线与Bezier曲线的比较1、Bezier曲线的基函数的次数等于控制顶点数减一,而B样条曲线的基函数的次数与控制点数无关,即可用任意多的控制点来拟合三次均匀B样条曲线。原因是B样条曲线是分段拟合的,这样构造复杂曲线更方便。2、Bezier曲线的起点和终点正好是控制多边形的首末控制点,控制形状直观方便。而B样条曲线不经过控制多边形顶点。3 3、为使B样条曲线经过控制多边形首末控制顶点,使之具有Bezier类似的优点。实际应

19、用中常引入准均匀B样条,即在节点矢量中两端节点具有k1个重复度。例如:当控制点数n + 1 7,次数k 3的准均匀三次B样条曲线的节点矢量可定义为u 0,0,0,0,1,2,3,4,4,4, 4。 4、若三次B样条曲线n + 1 4,k 3的节点矢量u 0,0,0,0,1,1,1,1 ,此时三次B样条曲线转化为三次Bezier曲线。 因此,可以说因此,可以说BezierBezier曲线仅是曲线仅是B B样条曲线的特例,也样条曲线的特例,也就是说就是说B B样条表达能力完全覆盖了样条表达能力完全覆盖了BezierBezier表达表达。 5 5、B样条曲线比Bezier曲线具有更紧致的凸包。 因此,因此,B B样条方法的凸包性比样条方法的凸包性比Bezie

温馨提示

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

评论

0/150

提交评论