蔣水秀 單 巖
1.杭州科技職業(yè)技術(shù)學(xué)院,杭州,311402 2.浙江大學(xué),杭州,310027
自由曲線擬合是計(jì)算機(jī)輔助幾何設(shè)計(jì)(CAGD)的一項(xiàng)重要技術(shù)[1-3],是自由曲面逆向建模的基礎(chǔ)和前提,在逆向工程設(shè)計(jì)領(lǐng)域(如汽車設(shè)計(jì))有廣泛的應(yīng)用。自由曲線的擬合效果可從兩方面評(píng)估:一是擬合精度[4-8],即點(diǎn)群與曲線最大偏差;二是擬合曲線的光順性[9-10],即要求曲線連續(xù)且沒有非設(shè)計(jì)意圖的波動(dòng)。
在現(xiàn)有的曲線擬合研究及相關(guān)CAD軟件中,對(duì)擬合精度的控制已經(jīng)比較成熟,然而對(duì)擬合曲線的光順性控制則缺乏有效的手段。
影響曲線光順性的關(guān)鍵因素有兩個(gè):一是曲線的階數(shù),即控制頂點(diǎn)數(shù)量;二是控制頂點(diǎn)的分布狀態(tài)。現(xiàn)有的自動(dòng)擬合方法往往只能通過(guò)減少控制頂點(diǎn)數(shù)量(同時(shí)也犧牲了擬合精度)來(lái)改善光順性,而對(duì)優(yōu)化控制頂點(diǎn)的分布則缺乏有效手段。
曲線控制頂點(diǎn)的分布不僅影響曲線的光順性,還對(duì)曲線的編輯、拼接等后續(xù)操作的方便性有重要的影響。因此,在曲線擬合中,如不能對(duì)曲線的控制頂點(diǎn)分布進(jìn)行有效的干預(yù),則會(huì)使曲線擬合功能的實(shí)用性大打折扣。
本文針對(duì)這一現(xiàn)狀,提出并實(shí)現(xiàn)了一種新的自由曲線交互擬合方法。該方法首先通過(guò)人工交互手段,逐步增加擬合曲線控制頂點(diǎn)數(shù),并調(diào)整和優(yōu)化其分布狀態(tài)。然后,通過(guò)對(duì)自由曲線控制頂點(diǎn)位置的全自動(dòng)迭代調(diào)整,使曲線逼近點(diǎn)群,保證了擬合效率及精度。
如圖1所示,{p j}(j=1,2,…,n)是用來(lái)擬合曲線的n個(gè)有序空間點(diǎn),稱為型值點(diǎn)或擬合點(diǎn),其交互擬合流程如下:
圖1 初始擬合曲線
(1)創(chuàng)建初始擬合曲線。根據(jù){p j}擬合二階樣條曲線R2(t),其兩端控制頂點(diǎn)分別為Q1和Q2,中間控制頂點(diǎn)為Q3。
(2)交互增加控制頂點(diǎn)。根據(jù)擬合偏差情況,在合理位置交互添加第m個(gè)控制頂點(diǎn)Q m(m>3),此時(shí)控制頂點(diǎn)數(shù)增加到m個(gè),由這些控制頂點(diǎn)生成m-1次樣條曲線Rm-1(t),如圖2所示。
圖2 增加控制頂點(diǎn)(m=5)
(3)迭代調(diào)整控制頂點(diǎn)(詳見本文第2節(jié))。根據(jù)型值點(diǎn)集相對(duì)于當(dāng)前擬合曲線的偏離程度,對(duì)所有中間控制頂點(diǎn)Qi(i=3,4,…,m)的位置進(jìn)行迭代調(diào)整,直到曲線Rm-1(t)達(dá)到與{p j}的最佳逼近,如圖3所示。
圖3 控制頂點(diǎn)調(diào)整(m=5)
(4)擬合收斂判斷。如果調(diào)整后的Rm-1(t)與{p j}的偏離程度滿足精度控制要求,則得到最終結(jié)果,如圖4所示。否則轉(zhuǎn)向步驟2。
圖4 完成交互擬合(m=6)
控制頂點(diǎn)的調(diào)整是根據(jù)型值點(diǎn)相對(duì)于當(dāng)前特征曲線的偏離程度來(lái)計(jì)算的。{p j}內(nèi)的某型值點(diǎn)的偏離對(duì)各個(gè)控制頂點(diǎn)位置調(diào)整的影響程度是完全不同的,我們規(guī)定每個(gè)型值點(diǎn)只作為與其距離最近的控制頂點(diǎn)位置調(diào)整的計(jì)算依據(jù)。
基于這一規(guī)定,我們可以為某中間控制頂點(diǎn)Qi(i=3,4,…,m)分配一組型值點(diǎn)作為其位置調(diào)整計(jì)算的參考點(diǎn)組{p j}(k1≤j≤k2,1≤k1≤k2≤n),如圖5所示。
某控制頂點(diǎn)Qi的單次調(diào)整方向?yàn)槠湓谇€上最近點(diǎn)處的法線方向,調(diào)整位移量ξi計(jì)算如下:
圖5 控制頂點(diǎn)調(diào)整的參考點(diǎn)組
式中,d j為型值點(diǎn)p j到擬合曲線的偏差;ηj為型值點(diǎn)p j對(duì)控制頂點(diǎn)位置調(diào)整的影響因子;Dj為型值點(diǎn)p j到控制頂點(diǎn)Qi的距離。
其中,l>1,用于強(qiáng)化距離Dj對(duì)ηj的計(jì)算結(jié)果的影響,l越大,則與Qi距離較近的型值點(diǎn)的影響因子越大,在程序中取l=2。
中間控制頂點(diǎn)的位置調(diào)整是一個(gè)反復(fù)迭代過(guò)程,其算法基本流程如下:(1)為每個(gè)中間控制頂點(diǎn)Qi分配參考點(diǎn)組。(2)按式(1)依次計(jì)算并調(diào)整各個(gè)控制頂點(diǎn)的位置。
(3)計(jì)算擬合偏差(最大偏差及平均偏差)的減?。ǜ纳疲┲凳欠裥∮谝?guī)定的閾值,若是,則停止調(diào)整;否則返回步驟1繼續(xù)調(diào)整。
在為控制頂點(diǎn)分配對(duì)應(yīng)的調(diào)整點(diǎn)組時(shí),以某型值點(diǎn)到各控制頂點(diǎn)的空間距離為判定標(biāo)準(zhǔn),將該型值點(diǎn)放入與其最近的控制頂點(diǎn)的參考點(diǎn)組,作為該控制點(diǎn)的調(diào)整依據(jù)。
但在圖6所示的曲線急劇彎曲情況下,這一分組判別將會(huì)失效。不僅如此,對(duì)控制頂點(diǎn)位置移動(dòng)矢量方向的計(jì)算也會(huì)出現(xiàn)錯(cuò)誤。所以,我們要求所擬合的目標(biāo)曲線的曲率變化足夠小。幸運(yùn)的是,在工程實(shí)際項(xiàng)目中,曲線一般都比較“平緩”,圖6所示的情況極少發(fā)生。
圖6 異常的情況
我們?cè)赨G NX軟件平臺(tái)上采用GRIP二次開發(fā)工具實(shí)現(xiàn)了本文提出的自由曲線交互擬合程序。
本文對(duì)圖7所示的一組三坐標(biāo)測(cè)量點(diǎn)進(jìn)行了擬合比對(duì)實(shí)驗(yàn),擬合精度設(shè)定為0.1mm。圖7a所示為采用CAD軟件進(jìn)行擬合得到的5階自由曲線。由圖可見,其最大擬合偏差為0.084mm,同時(shí),擬合曲線的中間兩個(gè)控制頂點(diǎn)波動(dòng)較大,曲線兩端曲率梳曲線出現(xiàn)了“翹起”的現(xiàn)象。
圖7b所示則為采用交互擬合技術(shù)得到的5階擬合曲線,各控制頂點(diǎn)分布均勻,波動(dòng)小,曲率梳整體變化平緩、一致,同時(shí),其最大擬合偏差僅有0.05mm,相比圖7a明顯得到改善。
圖7 擬合對(duì)比實(shí)驗(yàn)
采用交互擬合技術(shù)生成的邊界曲線可用于構(gòu)造高光順的曲面。圖8為某汽車內(nèi)飾頂部主體曲面逆向建模的結(jié)果,其U、V兩個(gè)參數(shù)方向的曲率均表現(xiàn)出令人滿意的結(jié)果。
圖8 應(yīng)用實(shí)例
本文提出的自由曲線交互式擬合技術(shù)較好地解決了現(xiàn)有CAD軟件擬合功能無(wú)法保證控制頂點(diǎn)分布質(zhì)量的問(wèn)題,從而確保了擬合曲線的光順度。同時(shí),通過(guò)全自動(dòng)調(diào)整控制頂點(diǎn)位置,保證了擬合的效率和精度。實(shí)際應(yīng)用效果證明,該方法可較好地滿足自由曲線擬合在質(zhì)量、效率方面的綜合要求,有較高的工程實(shí)用價(jià)值,在汽車零部件逆向設(shè)計(jì)等領(lǐng)域有廣泛的應(yīng)用前景。
[1]Piegl L,Tiller W.The NURBS Book[M].New York:Springer,1997.
[2]郭隱彪,郭江,王振忠.非球面檢測(cè)路徑與高精度曲線擬合算法研究[J].中國(guó)機(jī)械工程,2008,19(10):1201-1204.
Guo Yinbiao,Guo Jiang,Wang Zhenzhon.Study on Measuring Path and High-precision Curve Fitting Algorithm for Axisymmetric Aspheric Optics[J].China Mechanical Engineering,2008,19(10):1201-1204.
[3]楊旭靜,胡仲勛,鐘志華.面向刀具路徑生成的NURBS曲線擬合算法研究[J].中國(guó)機(jī)械工程,2009,20(8):984-1007.
Yang Xujing,Hu Zhongxun,Zhong Zhihua.Research on the NURBS Curve Fitting for Tool Path Generation[J].China Mechanical Engineering,2009,20(8):984-1007.
[4]Foley T A.Scattered Data Interpolation and Approximation with Error Bounds[J].Computer Aided Geometric Design,1986,3(3):163-177.
[5]Bajaj C,Xu G.Error Bounded Regular Algebraic Spline Curves[C]//Proceedings of the Fifteenth Annual ACM Symposium on Computational Geometry.Miami Beach,F(xiàn)L.,1999:332-340.
[6]Park H.An Error-bounded Approximate Method for Representing Planar Curves in B-splines[J].Computer Aided Geometric Design,2004,21(5):479-497.
[7]Lee E T Y.Choosing Nodes in Parametric Curve Interpolation[J].Computer Aided Design,1989,21(6):363-370.
[8]藺宏偉,王國(guó)瑾,董辰世.用迭代B-spline曲線曲面擬合給定點(diǎn)集[J].中國(guó)科學(xué)(E 輯),2003,33(10):912-923.
Ling Hongwei,Wang Guojin,Dong Chenshi.Curve& Surface Fitting a Given Point Set Using Iteratively B-spline[J].Science China E,2003,33(10):912-923.
[9]劉鼎元,趙玉琦,詹廷雄,等.Bézier曲線和B樣條曲線光順擬合法[J].計(jì)算數(shù)學(xué),1984,6(4):360-365.
Liu Dingyuan,Zhao Yuqi,Zhan Yanxiong,et al.Smooth Fitting Using Bézier Curve and B Spline Curve[J].Journal of Computational Mathematics,1984,6(4):360-365.
[10]王國(guó)瑾,王振武,壽華好.B樣條曲面在嚴(yán)格約束狀態(tài)下的光順擬合[J].軟件學(xué)報(bào),1998,9(9):696-698.
Wang Guoqin,Wang Zhenwu,Shou Huahao.Smooth Fitting Using B Spline Curve in Strict Constraint Condition[J].Journal of Software,1998,9(9):696-698.