APP下载

结合加权的三次Bézier曲线的新扩展

2020-04-24拓明秀张贵仓

计算机工程与设计 2020年3期
关键词:虚线多边形花瓶

拓明秀,张贵仓,汪 凯

(西北师范大学 数学与统计学院,甘肃 兰州 730070)

0 引 言

Bézier方法因具有多种利于曲线设计的优良特性而成为计算机辅助几何设计(computer aided geometric design,CAGD)的重要方法之一[1]。但Bézier曲线呈现出的刚性给曲线的调节和修改带来较大的困难。为了解决这类问题,很多学者做出了大量工作,提出了一系列带有形状参数的类Bezier曲线,这些曲线主要集中在代数多项式函数空间[2-5]和三角多项式函数空间[6-11]。在文献[12]中,刘等将拓扑映射和包络理论运用到一类三次Bézier曲线然后分析了形状参数对其的影响。在文献[13]中,严等在不改变多项式基函数的类型且不增大多项式基函数次数的前提下,对三次Bézier曲线的控制多边形顶点引入了参数并与Bernstein基函数进行线性组合构造出新的含参数的扩展基。在文献[14]中,汪等基于三角域构造了一种具有高阶连续性的含两个形状参数的拟三次TC-Bézier曲线曲面。

尽管这两种方法都取得了良好效果,但两者各有优缺点,比如代数多项式函数空间构造的曲线不能精确表示椭圆弧、圆弧曲线等,三角多项式函数空间虽然可以精确地表示椭圆弧、圆弧,但是却没有代数多项式空间构造的曲线计算简单和直观。

为了解决传统文献出现的问题,本文结合加权思想,以Bézier曲线与三次T-Bézier曲线为工具,在代数多项式空间和三角多项式空间同时进行扩展,得到了新的ωλμ-TC-Bézier曲线。新构造的曲线在解决传统Bézier曲线的扩展问题的同时能够克服Bézier曲线不能精确表示二次曲线的弱点。应用实验结果表明,ωλμ-TC-Bézier曲线对几何设计研究十分有效。

1 Bézier曲线与三次T-Bézier曲线

1.1 Bézier曲线

给定控制多边形顶点Qi(i=0,1,…,n), 当u=[0,1] 时,n次Bézier曲线定义如下

Bézier曲线具有几何不变性、对称性、凸包性、变差缩减性和保凸性等优越的性质。

1.2 三次T-Bézier曲线

给定控制多边形顶点Pi(i=0,1,…,n), 当u∈[0,π/2] 时,n次T-Bézier曲线定义如下

其中,Ti,n(u)(i=0,1,…,n) 为三次T-Bézier曲线的基函数。当n=3,λ,μ∈[-2,1] 时,T-Bézier曲线基函数具有如下形式

(1)

该基函数具有非负性、权性、对称性等性质,文献[9]在此基础上进一步验证了其具有全正性等性质。由此得到三次T-Bézier曲线在具有Bézier曲线优良性质的同时还具有保形性。

2 ωλμ-TC-Bézier曲线基函数的定义及性质

2.1 基函数的定义

当n=3时,式(1)是三次ωλμ-TC-Bézier曲线的基函数,该基函数的形状参数是影响曲线基函数形状的主要因素,图1给出了对形状参数进行调节时ωλμ-TC-Bézier曲线基函数的图像

(2)

图1 ωλμ-T-Bézier曲线基函数图像

2.2 基函数的性质

ωλμ-TC-Bézier曲线基函数具有下列性质:

(1)非负性:Di,n(u)≥0。

根据Bernstein基函数和三次T-Bézier曲线基函数具有权性能够得到Di,n(u) 的权性。

(3)端点性质:在定义区间的端点的端点处,有

(6)全正性:由Bernstein基函数和三次T-Bézier基函数的全正性[9],可以推出ωλμ-TC-Bézier曲线基函数的全正性。

3 ωλμ-TC-Bézier曲线的定义及性质

定义2 给定4个控制顶点Vi(i=0,1,2,3), 对于u∈[0,1],ω∈[0,1],λ,μ∈[-2,1]定义

(3)

称式(2)为含有形状参数ω,λ,μ的三次ωλμ-TC-Bézier曲线。

可以由ωλμ-TC-Bézier曲线基函数的性质,推出其对应的曲线具有以下性质:

(1)几何不变性:

由于曲线基函数具有权性,故ωλμ-TC-Bézier曲线的形状只取决于控制顶点,而与坐标系的选取无关。

(2)对称性:

当λ=μ时,若将曲线的控制顶点V0,V1,V2,V3的顺序取为V3,V2,V1,V0时,得到的是同一条ωλμ-TC-Bézier曲线,只是该曲线与原曲线的方向相反。

(3)端点性质:

ωλμ-TC-Bézier曲线起始于V0点,终止于Vn点,即

曲线首末顶点的一阶导数为

(4)

首末顶点的二阶导数为

(5)

(4)凸包性:

由曲线基函数的权性和非负性可以得到曲线具有凸包性,即曲线完全被包围在由特征多边形所形成的凸包之内。

(5)变差缩减性:

由ωλμ-TC-Bézier曲线基函数具有全正性能够得到ωλμ-TC-Bézier曲线的变差缩减性。

(6)退化性:

当ωλμ-TC-Bézier曲线的取形状参数ω=1时,曲线退化为三次Bézier曲线;当形状参数ω=0时,退化为三次T-Bézier曲线;当ω=0且λ=μ时,退化为文献[9]中的T-Bézier曲线。

(7)保凸性:

由ωλμ-TC-Bézier曲线具有变差缩减性可以得知曲线具有保凸性。

4 ωλμ-TC-Bézier曲线的拼接

尽管ωλμ-TC-Bézier方法具有许多优点,但在实际造型当中,单个的ωλμ-TC-Bézier曲线通常无法准确地描述结构复杂的曲线,所以为了保证曲线的光滑性常采用拼接的方法。本文讨论n=3时,ωλμ-TC-Bézier曲线的拼接。

4.1 G1连续条件

为了实现D1(u) 和D2(u) 两条曲线在公共连接点处的G1光滑拼接,首先要求D1(u) 的末顶点与D2(u) 的起始点位置连续,即P3=Q0。 其次,两条曲线还需在公共连接点处的切矢方向相同,即

D′2(0)=kD′1(1),k>0

(6)

由式(4)得到D1(u) 末顶点和D2(u) 起始点的一阶切矢分别为

(7)

(8)

将式(7)和式(8)带入式(6)可得

(9)

4.2 G2连续条件

为了使两条曲线D1(u) 和D2(u) 在公共连接点处达到G2光滑拼接,必须要求两曲线具有公共的曲率矢,也就说除了要满足G1连续的条件外,还需要满足副法矢相同,曲率相等

D″2(0)=δD″1(1)

(10)

D1(u) 和D2(u) 在连接点处曲率相等也就是要满足关系

(11)

把式(6)和式(10)同时代入式(11)后,得到两条曲线在连接点处达到曲率连续的条件是

δ=k2

(12)

由式(5)得D1(u) 的末端和D2(u) 首端的二阶切矢分别为

(13)

将式(12)和式(13)带入式(10)后整理可得

(14)

由此可得式(11)和式(14)是两条ωλμ-TC-Bézier曲线在拼接时达到G2连续的条件。图2是当λ1=μ1=0.6,λ2=μ2=0.6,ω1=0.2时,ω2=0.5,D1(u) 和D2(u) 达到G1和G2连续的光滑拼接图。

图2 ωλμ-T-Bézier曲线的拼接

5 曲线的应用实例

5.1 形状参数λ、μ对曲线的调节作用

改变形状参数ω,λ,μ的值可以调节ωλμ-TC-Bézie曲线的形状。图3(a)是当λ=0.4,μ=0.5,ω依次取0,0.2,0.4,0.6,0.8,1时,曲线向上逐渐逼近控制多边形的图像。图3(b)是当λ=0.4ω=0.6,μ依次取-2,-1.5,-0.8,0,0.5,1时,曲线向右逐渐逼近控制多边形的图像。图3(c)是当μ=0.5,ω=0.4,λ依次取-2,-1.5,-0.8,0,0.5,1时,曲线向左逐渐逼近控制多边形的图像。

图3 形状参数ω,λ,μ对ωλμ-TC-Bézier曲线的调节

5.2 3种曲线间的比较

图4为控制顶点V0=(1,1),V1=(2,3),V2=(5,3),V3=(6,1) 时Bézier曲线、ωλμ-TC-Bézier曲线和三次T-Bézier曲线之间的比较,其中参数λ=0.6,μ=0.5,ω由上至下依次取值为1,0.5,0。三次Bézier曲线可以是ωλμ-TC-Bézier曲线取形状参数ω=1退化而来;三次T-Bézier曲线是ωλμ-TC-Bézier曲线取形状参数ω=0且λ=μ退化而来。这说明了ωλμ-TC-Bézier曲线比Bézier曲线和三次T-Bézier曲线具有灵活的形状可调性,并且可以同时兼顾二者的优点。

图4 Bézier曲线、ωλμ-TC-Bézier曲线和 三次T-Bézier曲线的比较

5.3 抛物线弧的表示

设V0,V1,V2,V3为控制多边形顶点,若令λ=0,μ=0,ω=0, 曲线的4个控制多边形顶点为V0=(0,0),V1=(a,0),V2=V3=(2a,b), 则有

图5中离控制多边形较远的虚线是Bézier曲线对抛物线弧的近似逼近。实曲线是三次T-Bézier曲线对抛物线弧的精确表示。其中实曲线同样是当λ=0,μ=0,ω=0时ωλμ-TC-Bézier曲线对抛物线弧的精确表示,离控制多边形较远的虚线同样是当λ=1,μ=0,ω=0时ωλμ-TC-Bézier曲线对抛物线弧的近似逼近,离控制多边形较近的虚线是当λ=0.5,μ=0,ω=0时ωλμ-TC-Bézier曲线对于抛物线弧的近似逼近。实验结果表明,取λ∈[0,1] 中不同值,ωλμ-TC-Bézier曲线既能够对抛物线精确表示也可以不同程度逼近抛物线弧,新曲线表现出很强的形状可调性,更适合用于曲线曲面设计。

图5 抛物线弧的表示

5.4 椭圆弧和圆弧的表示

设控制多边形的顶点为V4,V5,V6,V7, 令λ=0,μ=0,ω=0, 可得V4=(0,2b),V5=(a,2b),V6=(2a,b),V7=(2a,0), 则有

图6(a)中外侧虚线是Bézier曲线对椭圆弧的近似逼近。内侧点线是三次T-Bézier曲线对抛物线弧的精确表示。其中内侧点线也是当λ=0,μ=0,ω=0是ωλμ-TC-Bézier曲线对抛物线弧的精确表示,外侧虚线也是当λ=1,μ=0,ω=0是ωλμ-TC-Bézier曲线对抛物线弧的近似逼近,内侧点线与外侧虚线之间的虚线是当λ=0.5,μ=0,ω=0时ωλμ-TC-Bézier曲线对于抛物线弧的近似逼近。图6(b)中曲线是控制顶点为V4=(0,2),V5=(1,2),V6=(2,1),V7=(2,0) 时Bézier曲线、三次T-Bézier曲线、ωλμ-TC-Bézier曲线表示的几段圆弧。实验结果表明,取λ∈[0,1] 中不同值,ωλμ-TC-Bézier曲线既能对椭圆弧、圆弧精确表示也可以不同程度逼近椭圆弧、圆弧。

图6 曲线表示的椭圆弧和圆弧

5.5 花瓣图形

ωλμ-TC-Bézier曲线有较强的工业造型设计功能,当ωλμ-TC-Bézier曲线的起始点与末顶点相重合时,能够获得封闭的曲线。图7为当λ=μ=0.5,ω的取值依次为0,0.3,0.6,1时获得的闭合曲线及开曲线所形成的花瓣图形。最外侧花瓣线为ωλμ-TC-Bézier曲线ω=0时的三次T-Bézier曲线,最内侧花瓣线为ωλμ-TC-Bézier曲线ω=1时的Bézier曲线,而本文构造的ωλμ-TC-Bézier曲线只需调节形状参数就可以表示出三次T-Bézier曲线及Bézier曲线。

图7 花瓣图形

5.6 花瓶旋转曲面

将相邻的Bézier曲线、三次T-Bézier曲线及ωλμ-TC-Bézier曲线分别以G1光滑拼接得到的曲线作为母线,将其旋转可以得到形似花瓶的旋转曲面。图8(a)是当λ=μ=0.6时3条曲线的G1光滑拼接曲线,图8(b)是Bézier曲线拼接旋转产生的花瓶旋转曲面。图8(c)是三次T-Bézier曲线拼接旋转得到的花瓶旋转曲面,图8(d)是ωλμ-TC-Bézier曲线拼接取ω=0.4旋转产生的花瓶旋转曲面。ωλμ-TC-Bézier拼接曲线取形状参数ω=1时能够生成图8(b),取形状参数ω=0时能够生成图8(c),且调节参数ω∈[0,1] 能够使对应的花瓶旋转曲面的形状介于Bézier和三次T-Bézier拼接曲线的花瓶旋转曲面之间。这为曲面设计提供了很好的工具。

图8 3种曲线生成的花瓶旋转曲面

6 结束语

为了解决传统文献在构造曲线时不能对代数多项式和三角多项式函数空间的优点兼顾的问题,本文结合加权思想,将Bézier曲线和三次T-Bézier曲线作为工具,同时在代数多项式空间和三角多项式空间进行扩展,得到了新的ωλμ-TC-Bézier曲线。大量的分析以及实例表明,新曲线具有很强的实用性与有效性。实际上,加权思想不仅仅适用于Bezier曲线的扩展,而且还适用于B样条曲线、曲面,乃至三角域曲面的拓展。但限于篇幅,此类结果的分析将另文叙述。

猜你喜欢

虚线多边形花瓶
多边形中的“一个角”问题
多边形的艺术
解多边形题的转化思想
我画青花瓶
多边形的镶嵌
大牛
花瓶怎么碎了?
有趣的花瓶储蓄罐