姚 興,杭后俊,李晴晴,尹天樂
(安徽師范大學(xué) 數(shù)學(xué)計算機(jī)科學(xué)學(xué)院,安徽 蕪湖 241000)
B樣條方法不僅保留了Bezier方法的優(yōu)良性質(zhì),而且克服了Bezier方法在形狀調(diào)節(jié)時不具有局部性的缺陷,在參數(shù)連續(xù)性的基礎(chǔ)上完美解決了在描述復(fù)雜形狀時遇到的連接問題,并將Bezier方法作為其一個特例。此外,B樣條方法還提供了一系列配套技術(shù),展示了其在表示和設(shè)計自由曲線曲面時的強(qiáng)大能力[1-4]。雖然NURBS方法提供了用權(quán)因子來調(diào)節(jié)曲線曲面的形狀[5-6],但權(quán)因子難以駕馭的特點使得一般用戶望而興嘆。而實際上,(非有理)B樣條方法對于自由曲線曲面形狀的表示、設(shè)計已經(jīng)足夠,只有在遇到二次圓錐曲線曲面等特殊情況時才考慮使用NURBS方法[7]。但同時也看到,B樣條方法也存在自身的缺陷,如只能通過移動控制點來調(diào)節(jié)曲線曲面形狀[8-9],調(diào)節(jié)手段過于單一,等等。而由于形狀參數(shù)的調(diào)整更為直觀和靈活,因而成為工程應(yīng)用中用來調(diào)節(jié)曲線曲面形狀的實用方法。因此,國內(nèi)外學(xué)者普遍采用在B樣條基函數(shù)中引入形狀參數(shù)的方法[10-15],但擴(kuò)展對象主要針對B樣條曲線,對將形狀參數(shù)引入B樣條曲面的表示以及對B樣條曲面的調(diào)節(jié)作用討論較少。
文中首先引入帶形狀參數(shù)的類三次均勻B樣條基函數(shù),分析了其基本性質(zhì)以及形狀參數(shù)的幾何意義;其次基于該組基函數(shù)定義了帶形狀參數(shù)的均勻B樣條曲線,闡述了形狀參數(shù)對均勻B樣條曲線的調(diào)節(jié)功能;最后將形狀參數(shù)引入到均勻B樣條曲面中,詳細(xì)討論了帶形狀參數(shù)的均勻B樣條曲面的基本性質(zhì)以及形狀參數(shù)對曲面的影響,并給出了具體實例。
稱下列分段三次函數(shù)為類三次均勻B樣條基函數(shù):
Ni,2(u,α)=
(1)
其中,α(-1≤α≤1)為形狀參數(shù);n(i=0,1,…,n)為控制頂點下標(biāo)上限。
不難看出,類二次均勻B樣條基函數(shù)具有如下基本性質(zhì):
(2)局部支撐性:當(dāng)-1≤α≤1,i≤u≤i+3時,Ni,2(u,α)≥0。
(3)Ni,2(u,α)=Ni-j,2(u-j,α),j=0,1,…,i。即類三次均勻B樣條在定義域內(nèi)的各個節(jié)點區(qū)間上都具有相同的形狀,且任一節(jié)點區(qū)間上的類三次均勻B樣條都可以由另一節(jié)點區(qū)間上的類二次均勻B樣條經(jīng)過平移得到,如圖1所示。其中α取0.25和-0.25
圖1 類三次均勻B樣條的平移特性
分別對應(yīng)實線和虛線。
(4)當(dāng)α=0時,即退化為二次均勻B樣條。
Ni,2(u)=
(2)
形狀參數(shù)α對樣條形狀的影響如圖2所示。其中α取0,0.5和-0.5分別對應(yīng)實曲線、長虛線和點畫線??梢钥吹剑?dāng)α越小,樣條形狀越向左偏,當(dāng)α越大,樣條形狀越向右偏。
圖2 α對樣條形狀的影響
稱曲線Ci(u,α)為類三次均勻B樣條曲線。
3,…,n
(3)
其中,di(i=0,1,…,n)為控制點;-1≤α≤1為形狀參數(shù)。
而實際上,只需作參數(shù)變換t=u-i,Ni-2,2(u,α),Ni-1,2(u,α),Ni,2(u,α)就可以改寫成如下用局部參數(shù)的表示形式:
(4)
上述B樣條曲線的方程可以表示成如下形式:
Ci(t,α)=di-2B0,2(t,α)+di-1,2B1,2(t,α)+
t∈[0,1];i=2,3,…,n
(5)
類三次均勻B樣條曲線具有如下性質(zhì):
圖3表示參數(shù)α對曲線Ci(u,α)的影響。
圖3 參數(shù)α對曲線形狀的影響
i=2,3,4
(6)
其中,α取0,0.35和-0.35分別對應(yīng)實線、長虛線和短虛線。
不難發(fā)現(xiàn),在每一節(jié)點區(qū)間上,當(dāng)λ越小,曲線越被拉向控制二邊形的第一條邊;當(dāng)λ越大,曲線越被拉向控制二邊形的最后一條邊。
圖4為用形狀參數(shù)表示的均勻B樣條曲線形成的一組封閉圖形。
圖4 類二次均勻B樣條曲線形成的封閉圖形
稱如下分片表示的曲面為類3×3次均勻B樣條曲面。
u∈[k,k+1],k=2,3,…,m,
v∈[l,l+1],l=2,3,…,n
(7)
其中,dij(i=0,1,…,m;j=0,1,…,n)為控制點;-1≤α,β≤1為形狀參數(shù)。
同樣,采用局部參數(shù)t,s可以表示為如下形式:
l=2,3,…,n
(8)
其中
(9)
(10)
分別取t=0,s=0;t=0,s=1;t=1,s=0;t=1;s=1時,可得曲面片Ckl(t,s,α,β)四個角點的位置。
(11)
α)(2+β)dk-1,l-1+(2-α)(2-
β)dk-1,l]
(12)
(13)
α)(2+β)dk,l-1+(2-α)(2-
β)dk,l]
(14)
可以將角點Ckl(0,0,α,β)寫成如下形式:
(15)
其余角點類似。圖5為曲面片角點的形成過程。
圖5 曲面片角點的位置
特別地,分別取k=2,l=2;k=2,l=n;k=m,l=2;k=m,l=n,可得曲面四個角點的位置。
β)d10+(2-α)(2-β)d11]
(16)
β)d1,n-1+(2-α)(2-β)d1,n]
(17)
(18)
(2+α)(2-β)dm-1,n+(2-
α)(2+β)dm,n-1+(2-α)(2-
β)dm,n]
(19)
(20)
其中t,s∈[0,1],k=2,3,…,m,l=2,3,…,n
可以求出
(21)
(22)
(23)
同理
(24)
上述結(jié)果說明,類3×3次均勻B樣條曲面沿等參數(shù)曲線跨界G1的。
圖6表示參數(shù)α,β對曲面形狀的影響。左圖是α=0.5,β=-0.5時的曲面,右圖是α=-0.5,β=0時的曲面。可以看出,在不改變控制點的情況下,通過改變參數(shù)α,β的值可達(dá)到對曲面形狀的調(diào)節(jié)作用。
圖6 參數(shù)α,β對曲面形狀的影響
通過定義帶形狀參數(shù)的類三次均勻B樣條基函數(shù),進(jìn)而定義類三次均勻B樣條曲線與3×3次均勻B樣條曲面,不僅保留均勻B樣條曲線曲面的原有特點,而且為形狀調(diào)節(jié)增加了額外的手段。由于形狀參數(shù)的直觀易操作,已成為工程應(yīng)用中設(shè)計人員用來調(diào)節(jié)曲線曲面形狀的實用方法。事實上,對于準(zhǔn)均勻B樣條曲線曲面以及工程中應(yīng)用更為廣泛的兩端固支的B樣條曲線曲面,也可以尋求相似的擴(kuò)展方法,使其更加適合工程應(yīng)用。而更為重要的是,文中方法對于研究非均勻B樣條曲線曲面的擴(kuò)展具有一定的借鑒作用,這將是下一步的主要研究工作。
[1] FARIN G.Curves and surfaces for CAGD[M].5th ed.[s.l.]:Academic Press,2002.
[2] 施法中.計算機(jī)輔助幾何設(shè)計與非均勻有理B樣條[M].修訂版.北京:高等教育出版社,2013.
[3] 李林峰,馬 蕾.三次均勻B樣條在工業(yè)機(jī)器人軌跡規(guī)劃中的應(yīng)用研究[J].科學(xué)技術(shù)與工程,2013,13(13):3621-3625.
[4] AGOSTON M K. Computer graphics and geometric modeling[M].[s.l.]:Springer,2005.
[5] PIEG L.Modifying of the shape of rational B_spline[J].Computer Aided Design,1989,21(8):509-518.
[6] 張國華,楊興強(qiáng),張彩明.基于權(quán)因子的NURBS曲線形狀調(diào)整[J].計算機(jī)輔助設(shè)計與圖形學(xué)學(xué)報,2004,16(10):1396-1400.
[7] 董 楓.船體曲面特征參數(shù)化設(shè)計技術(shù)研究[D].武漢:武漢理工大學(xué),2012.
[8] 張?zhí)l(fā),秦新強(qiáng),程東旭,等.NURBS曲面形狀修改的一種改進(jìn)算法[J].計算機(jī)輔助工程,2005,14(4):58-61.
[9] HAN Xuli.Cubic trigonometric polynomial curves with a shape parameter[J].Computer Aided Geometric Design,2004,21(6):535-548.
[10] 陶淑一,吳慶標(biāo).基于約束優(yōu)化的B樣條曲線形狀修改[J].計算機(jī)工程與應(yīng)用,2006,42(18):37-39.
[11] 謝 進(jìn),洪素珍.帶形狀參數(shù)的二次B樣條曲線[J].計算機(jī)輔助工程,2006,15(2):15-19.
[12] 陶淑一.二次均勻B樣條曲線的擴(kuò)展[J].計算機(jī)輔助工程,2008,17(2):54-56.
[13] CAO Juan,WANG Guozhao.Non-uniform B-spline curves with multiple shape parameters[J].Journal of Zhejiang University SCIENCE C:Computer & Electronics,2011,12(10):800-808.
[14] 張 成,熊 建.帶雙參數(shù)的三次均勻B樣條曲線[J].吉林師范大學(xué)學(xué)報:自然科學(xué)版,2015,36(2):69-72.
[15] 方 玲,王旭輝.帶形狀參數(shù)的二次非均勻雙曲B樣條曲線[J].合肥工業(yè)大學(xué)學(xué)報:自然科學(xué)版,2016,39(8):1148-1152.