logo资料库

曲线曲面基本理论-B样条,NURBS,Bezier.doc

第1页 / 共43页
第2页 / 共43页
第3页 / 共43页
第4页 / 共43页
第5页 / 共43页
第6页 / 共43页
第7页 / 共43页
第8页 / 共43页
资料共43页,剩余部分请下载后查看
一、概述
1.发展历程
2.基本概念
3.简单代数曲面
二、Bezier曲线的定义
1.定义
2.Betnstein基函数的性质
3.Bezier曲线的性质
4.Bezier曲线的递推(de Casteljau)算法
5.Bezier曲线的拼接
6.Bezier曲线的升阶与降阶
三、Bezier曲面
1.定义
2.性质
3.Bezier曲面片的拼接
四、B样条曲线与曲面
1.均匀B样条曲线
2.B样条曲线的性质
3.均匀双二次B样条曲面
4.均匀双三次B样条曲面
5.B样条曲线与曲面的递推表达
五、NURBS曲线与曲面
1.NURBS方法的提出及优缺点
2.NURBS曲线的定义
3.权因子对NURBS曲线形状的影响
4.NURBS曲面的定义
六、曲线、曲面的其它表达技术
1.quadric and superquadric
2.隐式曲面
3.基于偏微分方程(PDE)的曲面造型方法
4.等距曲线与曲面(Offset)
七、曲线、曲面造型技术
1. CAD系统中常见曲线生成手段
2. 常见曲面生成手段
3、常见曲线曲面编辑手段
4.其它造型手段
CAX 研发中心 www.dimcax.com/hust/index.php 第二讲 曲线曲面基本理论 一、概述 曲面造型(Surface Modeling)是计算机辅助几何设计 (Computer Aided Geometric Design,CAGD) 和计算机图形学的一项重要内容,主要研究在计算机图象系统的环境下对曲面的表示、设计、显示和分 析。它起源于汽车、飞机、船舶、叶轮等的外形放样工艺,由 Coons、Bezier 等大师于二十世纪六十 年代奠定其理论基础。经过三十多年的发展,曲面造型现在已形成了以有理 B 样条曲面(Rational B-spline Surface)参数化特征设计和隐式代数曲面(Implicit Algebraic Surface)表示这两类方法为主体, 以插值(Interpolation)、逼近(Approximation)这二种手段为骨架的几何理论体系。 1.发展历程 形状信息的核心问题是计算机表示,既要适合计算机处理,且有效地满足形状表示与设计要求,又 便于信息传递和数据交换的数学方法。象飞机、汽车、轮船等具有复杂外形产品的表面是工程中必须解 决的问题。曲面造型的目的就在如此。 1963 年美国波音(Boeing)飞机公司的佛格森(Ferguson)最早引入参数三次曲线(三次 Hermite 插值曲线),将曲线曲面表示成参数矢量函数形式,构造了组合曲线和由四角点的位置矢量、两个方向 的切矢定义的佛格森双三次曲面片,从此曲线曲面的参数化形式成为形状数学描述的标准形式。 1
CAX 研发中心 www.dimcax.com/hust/index.php 仅用端点的位置和切矢控制曲线形状是不够的,中间的形状不易控制,且切矢控制形状不直接。 1964 年,美国麻省理工学院(MIT)的孔斯(Coons)用四条边界曲线围成的封闭曲线来定义一 张曲面,Ferguson 曲线曲面只是 Coons 曲线曲面的特例。而孔斯曲面的特点是插值,即构造出来的曲 面满足给定的边界条件,例如经过给定边界,具有给定跨界导矢等等。但这种方法存在形状控制与连接 问题。 1964 年,舍恩伯格(Schoenberg)提出了参数样条曲线、曲面的形式。 1971 年,法国雷诺(Renault)汽车公司的贝塞尔(Bezier)发表了一种用控制多边形定义曲线和 曲面的方法。这种方法不仅简单易用,而且漂亮地解决了整体形状控制问题,把曲线曲面的设计向前推 进了一大步,为曲面造型的进一步发展奠定了坚实的基础。 但当构造复杂曲面时,Bezier 方法仍存在连接问题和局部修改问题。 同期,法国雪铁龙(Citroen)汽车公司的德卡斯特里奥(de Castelijau)也独立地研究出与 Bezier 类似的方法。 1972 年,德布尔(de Boor)给出了 B 样条的标准计算方法。 1974 年,美国通用汽车公司的戈登(Gorden)和里森费尔德(Riesenfeld)将 B 样条理论用于形 状描述,提出了 B 样条曲线和曲面。这种方法继承了 Bezier 方法的一切优点,克服了 Bezier 方法存在 的缺点,较成功地解决了局部控制问题,又轻而易举地在参数连续性基础上解决了连接问题,从而使自 由型曲线曲面形状的描述问题得到较好解决。但随着生产的发展,B 样条方法显示出明显不足,不能精 确表示圆锥截线及初等解析曲面,这就造成了产品几何定义的不唯一,使曲线曲面没有统一的数学描述 形式,容易造成生产管理混乱。 1975 年,美国锡拉丘兹(Syracuse)大学的佛斯普里尔(Versprill)提出了有理 B 样条方法。 80 年代后期皮格尔(Piegl)和蒂勒(Tiller)将有理 B 样条发展成非均匀有理 B 样条方法(即 NURBS),并已成为当前自由曲线和曲面描述的最广为流行的技术。 NURBS 方法的突出优点是:可以精确地表示二次规则曲线曲面,从而能用统一的数学形式表示规 则曲面与自由曲面,而其它非有理方法无法做到这一点;具有可影响曲线曲面形状的权因子,使形状更 宜于控制和实现;NURBS 方法是非有理 B 样条方法在四维空间的直接推广,多数非有理 B 样条曲线 曲面的性质及其相应算法也适用于 NURBS 曲线曲面,便于继承和发展。 由于 NURBS 方法的这些突出优点,国际标准化组织(ISO)于 1991 年颁布了关于工业产品数据交 换的 STEP 国际标准,将 NURBS 方法作为定义工业产品几何形状的唯一数学描述方法,从而使 NURBS 方法成为曲面造型技术发展趋势中最重要的基础。 2
CAX 研发中心 2.基本概念 www.dimcax.com/hust/index.php 曲线、曲面的显式、隐式、参数表示 曲线、曲面可以用显式、隐式和参数表示。 显式:形如 z = f(x,y)的表达式。对于一个平面曲线,显式表示一般形式是:y=f(x)。在此 方程中,一个 x 值与一个 y 值对应,所以显式方程不能表示封闭或多值曲线,例如,不能用显式方程表 示一个圆。 隐式:形如 f(x,y,z)= 0 的表达式。如一个平面曲线方程,表示成 f(x,y)=0 的隐式表示。 隐式表示的优点是易于判断函数 f(x,y)是否大于、小于或等于零,也就易于判断点是落在所表示曲 线上或在曲线的哪一侧。 参数表示:形如 x = f(t),y = f(t),z = f(t)的表达式,其中 t 为参数。即曲线上任一 点的坐标均表示成给定参数的函数。 如平面曲线上任一点 P 可表示为: P(t) = [x(t), y(t)]; 空间曲线上任一三维点 P 可表示为: P(t) = [x(t), y(t), z(t)];如图: 最简单的参数曲线是直线段,端点为 P1、P2 的直线段参数方程可表示为: P(t) = P1 + ( P2 - P1 )t t∈[0, 1]; 圆在计算机图形学中应用十分广泛,其在第一象限内的单位圆弧的非参数显式表示为: 其参数形式可表示为: 参数表示的曲线、曲面具有几何不变性等优点,计算机图形学中通常用参数形式描述曲线、曲面。 其优势主要表现在: (1)可以满足几何不变性的要求,坐标变换后仍保持几何形状不变 (2)有更大的自由度来控制曲线、曲面的形状。如一条二维三次曲线的显式表示为: 只有四个系数控制曲线的形状。而二维三次曲线的参数表达式为: 有 8 个系数可用来控制此曲线的形状。 (3)对非参数方程表示的曲线、曲面进行变换,必须对其每个型值点进行几何变换,不能对其方 程变换(因不满足几何变换不变性);而对参数表示的曲线、曲面可对其参数方程直接进行几何变换。 (4)便于处理斜率为无穷大的情形,不会因此而中断计算。 3
CAX 研发中心 www.dimcax.com/hust/index.php (5)参数方程中,代数、几何相关和无关的变量是完全分离的,而且对变量个数不限,从而便于 用户把低维空间中曲线、曲面扩展到高维空间去。这种变量分离的特点使我们可以用数学公式处理几何 分量。 (6)规格化的参数变量 t∈[0, 1],使其相应的几何分量是有界的,而不必用另外的参数去定义边 界。 (7)易于用矢量和矩阵表示几何分量,简化了计算。 位置矢量、切矢量、法矢量、曲率和挠率 (见高等数学) 插值、逼近、拟合 插值:给定一组有序的数据点 Pi,i=0, 1, …, n,构造一条曲线顺序通过这些数据点,称为对这些 数据点进行插值,所构造的曲线称为插值曲线。常用插值方法有线性插值、抛物线插值等。 逼近:构造一条曲线使之在某种意义下最接近给定的数据点,称为对这些数据点进行逼近,所构造 的曲线为逼近曲线。 拟合:插值和逼近则统称为拟合(fitting)。 光顺、连续性 光顺:通俗含义指曲线的拐点不能太多,曲线拐来拐去,就会不顺眼,对平面曲线而言,相对光顺 的条件是:a)具有二阶几何连续性(G2);b)不存在多余拐点和奇异点;c)曲率变化较小。 连续性:设计一条复杂曲线时,常常通过多段曲线组合而成,这需要解决曲线段之间如何实现光滑 连接的问题,即为连续性问题。 曲线间连接的光滑度的度量有两种:一种是函数的可微性,把组合参数曲线构造成在连接处具有直 到 n 阶连续导矢,即 n 阶连续可微,这类光滑度称之为 C n 或 n 阶参数连续性。另一种称为几何连续性, 组合曲线在连接处满足不同于 C n 的某一组约束条件,称为具有 n 阶几何连续性,简记为 G n。曲线光 滑度的两种度量方法并不矛盾,C n 连续包含在 G n 连续之中。 对于上图所示二条曲线 P(t) 和 Q(t),参数 ,若要求在结合处达到 G0 连续或 C0 连续,即 两曲线在结合处位置连续:P(1) = Q (0) 。 若要求在结合处达到 G1 连续,就是说两条曲线在结合处在满足 G0 连续的条件下,并有公共的切 矢: …………(1-1) 当 时,G1 连续就成为 C1 连续。 4
CAX 研发中心 www.dimcax.com/hust/index.php 若要求在结合处达到 G2 连续,就是说两条曲线在结合处在满足 G1 连续的条件下,并有公共的曲 率矢: 代入(1-1)得: 这个关系为: …………(1-2) …………(1-3) 即 Q”(0)在 P”(1)和 P’(1)确定的平面内。 为任意常数。当 时,G2 连续就成为 C2 连续。在弧长作参数的情况下,C1 连续保证 G2 连续,C1 连续能保证 G2 连续,但反过来不行。也就是 说 C n 连续的条件比 G n 连续的条件要苛刻。 , 3.简单代数曲面 简单代数曲面在造型系统中常见,但远远不能满足复杂曲面造型的要求。 5
CAX 研发中心 www.dimcax.com/hust/index.php 二、Bezier 曲线的定义 1.定义 给定空间 n+1 个点的位置矢量 Pi(i=0,1,2,…,n),则 Bezier 参数曲线上各点坐标的插值公式 是: 将其写成矩阵表达形式为: P(t)=  B )( t ,0 n )( tB ,1 n ...  )( t B , nn       P 0 P 1 ... Pn       其中,Pi 构成该 Bezier 曲线的特征多边形,Bi,n(t)是 n 次 Bernstein 基函数: = 1, 0! = 1 注意:约定 0 n=0, B0,0(t) = 1 n=1, B0,1(t) = 1-t n=2, B0,2(t) = (1-t)2 n=3, B0,3(t) = (1-t)3 …… …… 如图所示是一条三次 Bezier 曲线实例,即 n = 3 。 B1,2(t) = 2t(1-t) B1,3(t) = 3t(1-t)2 B1,1(t) = t B2,2(t) = t2 B2,3(t) = 3t2(1-t) B3,3(t) = t3 对于三次 Bezier 曲线,其表达式为 )( tP  i )( tBP 3, i 3 i  0 图 三次 Bezier 曲线 t[0,1] 式中:B0,3(t) = (1-t)3 ,B1,3(t) = 3t(1-t)2, B2,3(t) = 3t2(1-t), B3,3(t) = t3 将其写为矩阵表达式则为: P(t)= [ B0,3(t) B1,3(t) B2,3(t) B3,3(t) ] [ P0 P1 P2 P3 ]T 6
CAX 研发中心 www.dimcax.com/hust/index.php =  t 3 2 t t  1 1  3 3  1       3 6  3 0 13  0 3 0 0 0 0             P 0 P 1 P 2 P 3       式中若求 PX(t)的值,则取 Pi 的 x 坐标进行计算,同理求 Py(t)、Pz(t)的值,具体如下: Px(t)= [ B0,3(t) B1,3(t) B2,3(t) B3,3(t) ] [ P0x 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 注意:上式基函数的计算仅需一次,不必三次。 2.Betnstein 基函数的性质 注意:是基函数的性质,并非曲线的性质。 (1)正性 (2)端点性质 (3)权性 由二项式定理可知: (4)对称性 7
CAX 研发中心 因为 (5)递推性。 www.dimcax.com/hust/index.php Bi,n(t) Bi,n-1(t) Bi,n-2(t) Bi,n-3(t) ……… ,其计算过程表示为: Bi-1,n-1(t) Bi-1,n-2(t) Bi-1,n-3(t) ……… Bi-2,n-2(t) Bi-2,n-3(t) ……… 即高一次的 Bernstein 基函数可由两个低一次的 Bernstein 调和函数线性组合而成。 (6)导函数 Bi-3,n-3(t) ……… ……… (7)最大值: 在 处达到最大值。 3.Bezier 曲线的性质 (1)端点性质 a. 曲线端点位置矢量 由 Bernstein 基函数的端点性质可以推得,P(0) = P0 , P(1) = Pn 由此可见,Bezier 曲线的起点、终点与相应的特征多边形的起点、终点重合。 b. 端点切矢量,因为 即 P’(0) = n(P1-P0), P’(1) = n(Pn-Pn-1) 这说明 Bezier 曲线的起点和终点处的切线方向和特征多边形的第一条边及最后一条边的走 向一致。 8
分享到:
收藏