时间:2024-08-31
孙钊,张迪,刘华勇
(安徽建筑大学 数理学院 安徽 合肥 230601)
在计算机辅助几何设计中(CAGD),分段三次多项式和三角样条曲线曲面等设计方法一直是行之有效的热点课题,但这些方法均存在一定的局限性。譬如,曲线曲面的形状受到其相应的控制顶点的束缚。如果需要调整曲线曲面的外形,则必须调节曲线曲面的控制顶点,这给工程设计带来一定的困难。
为了方便而有效的对曲线曲面修改形状或调整其位置,有学者开创性的在以往修改曲线曲面形状的设计方法引入了权因子,通过改变权因子的取值,来构造满足实际工程设计要求的曲线曲面(例有理Bézier、NURBS[1])。此种方法虽可以在不改变控制顶点的情形下,较为灵活的设计几何外形,但相对来说它的计算比较复杂,计算过程仍旧存在许多难题:求导、如何选取权因子、求积等。1988年,B.A Barsky和B Joe两位学者提出了一类满足几何连续且带有全局参数的分段多项式样条曲线,学术界称之为β曲线[2-3]。β曲线具有较好的连续性和端点性质,但缺点是不能表示一些特殊的曲线曲面,例如:圆锥等。针对这一局限性,张纪文教授基于三角函数空间构造了H-B样条曲线[4]以及CB样条曲线[5],两种样条曲线的表达式中皆含有三角函数、双曲函数而且带有全局形状参数,具有整体修改曲线形状或者是调整曲线位置的功能。文献[6]也给出了一类含有全局形状参数的样条曲线曲面,它的优点是可以使曲线曲面从两端逼近其控制多边形(控制网格)。文献[7]文献与[8-9]定义了带有全局形状参数的代数三角样条曲线曲面和拟三角插值样条曲线曲面,两类曲线曲面同样具有全局修改形状的特点。与以上文献不同,文献[10-14]中基于不同的思路建立了几类带有局部形状参数的插值和拟合样条曲线,使局部修饰曲线曲面的形状这一难题,有了实现的可能。从局部微调和连续性两个角度分析,文献[2-9]基本上都带有全局形状参数,随着全局形状参数取值的改变,曲线会整体发生变化,因此并不能局部的对曲线曲面进行调整。文献[10-14]所定义的曲线虽然具有了局部可调性,但其连续性却同样局限于Ck-2连续即参数连续[15-16],他们均不具备几何连续性,故而难以满足实际工程上的需求。基于上述问题的考虑,本文初步构思是:在文献[17]定义的三角样条基函数的基础上加上了一组和为零的特殊多项式,从而构造了一类新的带两类形状参数的代数三角融合样条曲线,新的曲线主要优势是不仅满足一定的几何连续性,同时也具有全局或局部可调性质。通过调整全局或局部参数的取值新的曲线课题达到多种连续性,从而能够较灵活地设计形状各异的曲线,满足不同的工程需求。此外,当给定特殊的控制顶点、形状参数值时,新的曲线还可精确地表示圆或者椭圆弧段、抛物线与双曲线。
本文主要工作如下。第二部分提出了一类带形状参数的代数三角融合基函数(简称AT-BSpline)的定义,并给出了不同形状参数下基函数的的图形以及一些AT-B-Spline基函数的良好性质和相关证明。据此,第三部分则构造了带形状参数的AT-B-Spline曲线,随后给出了形状参数的变化对AT-B-Spline曲线整体或局部的影响。在第四部分中推导了形状参数在不同范围内时,带形状参数的AT-B-Spline曲线的连续性,并且给出了一些数值实例。最后,本文给出了特定的形状参数和控制顶点下,对三种圆锥曲线的精确表示。
定义 1:对于 t∈[0,π/2],若给定
为带有两类形状参数的代数三角融合基函数,简化起见,以下均称为AT-B-Spline基函数。其中,λ为全局形状参数,αi,βi为局部形状参数。
下图1给出了两类含有形状参数的AT-B-Spline基函数的图形。其中,图1(a)和(c)为不同形状参数取值下的基函数图形,而图1(b)和(d)分别是图1(a)和(c)经过平移后的曲线图形。
图1 两类含有形状参数的基函数及平移后的曲线图形
由公式(1)可知,AT-B-Spline样条基函数具有如下的一些良好的性质:
性质 1.非负性:ATBi(t)≥0,(i=0,1,2,3);
性质3.拟对称性:当局部形状参数αi=βi时,满足ATB3-i(t)=ATBi(π/2-t)(i=0,1);
性质4.退化性:当局部形状参数αi=βi=0时,简化后可知,AT-B-Spline样条基函数退化为文献[17]所定义的三角多项式样条。
性质5.端点性质:由公式(1)推导可得:
因此,AT-B-Spline样条基函数具有优良的端点性质,这极大地方便了工程师对自由曲线曲面的设计。如第三部分中基于AT-B-Spline基函数所构造的新的曲线,它同样具有很多较好的曲线性质。
定义2 若给定控制顶点
Pi∈ℜd(d=2,3;i=0,1,...,n)和节点向量
u1≤u2≤...≤un,称
为带形状参数的代数三角融合样条曲线段,简称AT-B-Spline样条曲线段。其中ATBj(t)(j=0,1,2,3)为公式(1)定义的样条基函数。
因此,可以定义多项式曲线:
其中Δui=ui+1-ui,i=3,4,...,n。即当形状参数取合适的数值时,所有的曲线段可以组成一条的分段光滑曲线。另外,它是对三角样条曲线一种含参扩展,在λ∈[-10,1]取值范围内,若取αi=βi=0,此时曲线C4(λ,αi,βi;u)就退化为文献[17]三角样条曲线。
(1)凸包性。根据AT-B-Spline样条基函数的规范性、非负性,曲线上的任意一点均处在由其控制顶点所形成的凸包范围内。
(2)对称性。当给定全局形状参数的取值范围λ∈[-10,1],令两个局部形状参数相等αi=βi,若颠倒由控制顶点P0P1…Pn所生成新的曲线的形状和原曲线的形状是一致的,仅曲线方向相反。
(3)端点性质。基于式(1)的端点性质,推导可得:
根据上述端点性质可知,AT-B-Spline样条曲线的首末端点与局部形状参数αi,βi的选取无关,仅与全局形状参数λ的取值有关,如图2所示。从图2(a)中可以直观的看出:在保持全局形状参数λ的取值不变,仅仅改变局部形状参数αi,βi的大小的情形下,AT-B-Spline样条曲线的形状会随之改变,但曲线的两端点位置并不发生变化。
(4)逼近性。
由曲线的端点性质和2f1(λ)+f2(λ)=1可得:
则有:
由公式(4)可知,AT-B-Spline样条曲线随λ取值的增大逐渐逼近其控制多边形。再者,
图2 不同形状参数对AT-B-Spline曲线的调配
则有:
故由公式(5)可知,当λ取值固定,随着局部形状参数αi,βi的逐渐增大,AT-B-Spline样条曲线逐渐向控制多边形的边靠近。
图3 不同形状参数对AT-B-Spline曲线的影响
由曲线端点性质和公式(4)、(5)可知,当αi,βi固定,λ的取值增加大时,曲线整体性的逐渐逼近其控制多边形的边,见图2(a);当λ固定,同时增大αi和βi,曲线在首末端点不变的情况下逐渐向多边形的边逼近,这说明同时改变局部参数的取值同样可以达到整体修改曲线的效果,如图2(b);当λ,αi固定,βi逐渐增大时,曲线从右侧逐渐向控制顶点Pi+1和边Pi+2Pi逼近,见图2(c);当λ,βi固定,αi逐渐增大时,曲线从左侧逐渐向控制顶点Pi和边Pi+1Pi-1逼近,见图2(d)。图3给出了几段曲线在满足一定连续性且局部形状参数αi,βi取不同值时,组合而成的一个简单造型。
(5)几何不变性与仿射不变性。根据式(2)所定义的AT-B-Spline样条曲线是参数化方程可知:当给定形状参数时,AT-B-Spline曲线的形状完全由其控制顶点决定,任意几何或仿射变换都不会对曲线的形状产生影响。
(6)局部形状可调性。由于式(1)中含有两类形状参数:全局参数λ、局部参数αi,βi。当固定λ,选取不同的αi,βi值时,可以调整AT-B-Spline曲线的局部性形状,且保持曲线的控制顶点不变;当固定αi,βi取值时,随着λ的改变,AT-B-Spline曲线的形状则整体性被调整。
图4给出了不同的形状参数对AT-B-Spline曲线整体或局部的影响。图4(a)与图4(b)分别是不同的曲线段组合而成的两个简单花瓶造型。在固定λ取值时,根据不同的局部形状参数αi,βi可以修改不同曲线段的局部形状,因此曲线具有局部可调性。
图4 形状参数对ATB-Spline曲线整体或局部的影响
定理1:当形状参数在不同范围内时,带形状参数的AT-B-spline曲线具有以下性质:
(1)当λ∈[-10,1],-2≤αi,βi≤1 时,带形状参数的 AT-B-Spline 曲线C4(λ,αi,βi;u)满足G1连续;
(2)当αi=βi+1=αi+1=βi时,两个相邻的Ci,4(λ,αi,βi;t) 和Ci+1,4(λ,αi+1,βi+1;t) 的 ATBSpline曲线C4(λ,αi,βi;u)满足C1∩G2连续;
(3)当λ≠1,αi=βi+1=αi+1=βi=0时,两个相邻的Ci,4(λ,αi,βi;t)和Ci+1,4(λ,αi+1,βi+1;t)的AT-B-Spline 曲线C4(α,λi,μi;u)满足Ck(k=0,1,2)连续;
(4)当λ=1,αi=βi+1=αi+1=βi=0时,两个相邻的Ci,4(λ,αi,βi;t)和Ci+1,4(λ,αi+1,βi+1;t)的AT-B-Spline 曲线C4(α,λi,μi;u) 满 足Ck(k=0,1,2,3)连续。
证明:
(1)当λ∈[-10,1],-2≤αi,βi≤1时,由曲线的端点性质可知:
其 中εi=[f3(λ)+αi+1/3π]/[f3(λ)+βi/3π],特别地,当αi+1=βi时,可得εi=1,即 ATB-Spline曲线C4(α,λi,μi;u)满足C1连续;
(2)当αi=βi+1=αi+1=βi时 ,这时可以令αi=βi+1=αi+1=βi=ξ,则由两个相邻的Ci,4(λ,αi,βi;t)和Ci+1,4(λ,αi+1,βi+1;t)曲线端点二阶导数的性质和f2(λ)=2f3(λ)知:
通过计算和推导可以得到:
其中εi=1,η=-2ξ/[π2f3(λ)+πξ]。即带形状参数的 AT-B-Spline 曲线C4(λ,αi,βi;u)在C1∩G2是连续的。
(3)当αi=βi+1=αi+1=βi=0时,简单计算可得εi=1,η=0,根据式(6)及式(7)有:
即 ATB-Spline 曲线C4(α,λi,μi;u)满足Ck(k=0,1,2,3)连续。
图5(a)与图5(b)给出了两种均满足C1∩G2连续的曲线构造。图5表明在全局参数固定的情况下,若给定几段曲线的局部形状参数取值一致,则整条拼接曲线可以达到C1∩G2连续。图6(a)(b)与图6(c)(d)则给出了两种满足C1∩G2连续的ATB-Spline曲线的旋转曲面,图6表明在全局形状参数λ固定时,只要保持曲线段的局部形状参数相等,即使修改αi,βi的取值,修改后的曲线也能达到C1∩G2连续,而且在图6中,当局部形状参数αi,βi的取值增大时,旋转曲面总体较为光滑,逼近效果良好。
图5 带两类形状参数AT-B-Spline曲线的构造
图6 两种造型的旋转曲面(彩绘)的构造
本文构造的AT-B-Spline曲线在给定特定的形状参数、控制顶点时,可以精确地表示三种圆锥曲线,包括椭圆或者圆的部分弧线、抛物线及双曲线。三种实例分别如下。
首先,将四个控制顶点特定为Pi-1(-a,-b),Pi(-a,b),Pi+1(a,b)和Pi+2(a,-b),当λ=0,αi=βi=0时,由定义2作出的曲线可以精确的表示椭圆的部分弧线。鉴于公式(2),通过运算可得:
上述表达式即为椭圆的参数方程。
在图7中,椭圆的长短轴分别取b=4、a=2。图7(a)右侧红色实线为绘出部分椭圆曲线,再根据椭圆的对称性,将所得曲线分别关于x,y轴对称,得到整个椭圆,见图7(b)。且当取a=b时,曲线可以精确地表示圆。
图7 椭圆的精确表示
图8 抛物线(双曲线)的精确表示
其次,当λ=0,αi=βi=0时,分别给定四个控制顶点为 :Pi-1(-a,b),Pi(0,-b),Pi+1(a,b) 和Pi+2(0,-b)或Pi-1(-a,b),Pi(0,0),Pi+1(-a,-b)和Pi+2(0,0),AT-B-Spline曲线可以精确的表示抛物线的部分弧线与双曲线的部分弧线,推导后的参数方程见公式(9)与公式(10),作出的弧线如图8(a)(b)所示。通过计算可得:
本文首先构造了一种带两类形状参数的ATB-Spline基函数,分析了基函数的图形及性质。基于AT-B-Spline基函数,建立了一种带有局部形状参数的新的曲线,并且对新的曲线的性质进行了论证。其次,给出并证明了这种AT-B-Spline曲线所满足的几何或参数连续性:在特殊参数取值下,ATB-Spline曲线可以达到C1∩G2连续性。归因于AT-B-Spline曲线具有的全局和局部两类形状参数,实际设计自由曲线曲面时,既可以大幅度的变动曲线的位置,也可以微调曲线的形状。此外,本文还给出了一些AT-B-Spline曲线应用的数值实例。其一是两种满足C1∩G2连续的旋转面造型,实例表明:不同的形状参数取值确实可以调整旋转面造型;其二,在给定特定的形状参数取值和控制顶点时,AT-B-Spline曲线可以精确地表示三种圆锥曲线(椭圆或圆的某一弧段、抛物线及双曲线),这更进一步验证了此方法的实用性。最后,希望本文能够为工程设计带来一定的方便。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!