王凌云
(山東服裝職業學院科研所,山東泰安 271000)
三次B樣條反求控制點
王凌云
(山東服裝職業學院科研所,山東泰安 271000)
反求工程作為復雜工業產品設計與制造的重要技術手段之一,深受CAD/CAM領域的廣泛重視,特別是自由曲面重構技術作為復雜曲面產品反求工程中的“瓶頸”問題,是今后一個時期的研究熱點.反求工程中最為關鍵的技術就是曲面重構技術.目前主要有兩大重構方法:NURBS曲面重構和三角Bezier曲面重構.本文圍繞NURBS曲面重構展開研究,提出一種反算三次B樣條曲線、曲面控制頂點的簡便算法.該算法適用于準均勻和非均勻B樣條曲線、曲面的反算.算法采用非節點邊界條件,不需要由用戶提供,從而使反算過程得以簡化.
反求工程;非均勻有理B樣條;型值點;控制點
在CACG實踐中,常遇到要求構造插值曲線和插值曲面,以用于已有曲線曲面的形狀表示.NURBS方法為標準解析形式的初等曲線曲面和自由型曲線曲面的精確表示和設計提供了一個公共的數學表示,有操縱控制頂點及權因子,為各種形狀設計提供了充分的靈活性,由于非均勻有理B樣條(NURBS)可以精確表示解析形狀和自由曲線曲面,國際標準組織于1991年把NURBS作為表示工業產品幾何形狀的工業標準.
NURBS曲線曲面在實際應用中可以分為兩種形式:一種是已知控制點求解曲線曲面上的點,稱為正算問題.另一種情況是已知曲線曲面上的型值點,求解曲線曲面的控制點,稱為反算問題.在實際應用中,常常是給出一組離散的型值點,要求構造通過該型值點的曲線曲面,即所謂的曲線曲面插值.文中只討論三次NURBS曲線問題,給出反算控制點的方法.
1.1 B樣條基礎知識
B樣條方法是以距離加權插值法為基礎,以數據點為型值點反求其控制點,然后將B樣條曲面看作是兩個不同方向的B樣條曲線的直積,避免復雜的矩陣運算.B條曲面由于其本身具有的跨界曲率自連續性使得曲面片間的光順性問題得以簡化.

其中di(i=0,1,…,n)為控制頂點,又成為德布爾點,順序連成的折線又稱為B樣條控制多邊形, Ni,k(u)(i=0,1,…,n)稱為規范k次B樣條基函數,是由節點矢量U=[u0,u1,…,un+k+1]按Cox-De Boor遞推公式定義的k次規范B樣條基函數,表示如下:

按照如上定義,在定義式中取k=3就是一條三次NURBS曲線的數學表達式.一般常用的是非均勻有理B樣條,它采用非均勻節點矢量,并在兩端點處采用重節點技術,使得曲線嚴格地插值于首末端點,工程中,一般三次B樣條曲線曲面己經能滿足實際的需求了.
1.2 B樣條曲線反算的一般過程
a)根據型值點的分布趨勢,構造非均勻節點矢量. b)應用計算得到的節點矢量構造非均勻B樣條基. c)構建控制點反算的系數矩陣.
d)建立控制點反算方程組,求解控制點列.其中,B樣條基函數的求值是關鍵.
1.2.1 假設規定
為使一k次B樣條曲線通過一組數據點qi(i=0,1,…,m),反算過程一般地使曲線的首末端點分別和首末數據點一致,使曲線的分段連接點分別依次與B樣條曲線定義域內的節點一一對應.即qi點有節點值uk+i(i=0,1,…,m).
1.2.2 三次B樣條插值曲線節點矢量的確定
曲線控制點反算時一般使曲線的首末端點分別與首末型值點一致,型值點pi(i=0,1,…,n)將依次與三次NURBS曲線定義域內的節點一一對應.三次NURBS插值曲線將由n+3個控制點di(i= 0,1,…,n+2)定義,相應的節點矢量為U=[u0,u1,…,un+6].為確定與型值點相對應的參數值ui+3(i=0,1,…,n),需對型值點進行參數化處理.選擇ui一般采取以下方法:
(1)均勻參數化法:

1.2.3 反算三次B樣條曲線的控制頂點
給定n+1個數據點pi,i=0,1,…,n.通常的算法是將首末數據點p0和pn分別作為三次B樣條插值曲線的首末端點,把內部數據點p1,p2,…,pn-1依次作為三次B樣條插值曲線的分段連接點,則曲線為n段.因此,所求的三次B樣條插值曲線的控制頂點bi,i=0,1,…,n+2應為n+3個.節點矢量U=[u0,u1,…,un+6],曲線定義域u∈[u3,un+3].B樣條表達式是一個分段的矢函數,并且由于B樣條的局部支撐性,一段三次B樣條曲線只受4個控制點的影響,下式表示了一段B樣條曲線的一個起始點:

式中ui+3為起始點的參數值,i∈[0,m-4],通過該式可獲得m-3個分段曲線的起始點.由于采用了重節點技術,末端型值點與控制點重合,則p0=V0;pm-3=Vm-1.則反求控制點方程組如下:

該方程組有m個未知數Vj,而方程的個數是m-2個.為此,還需補充兩個端點條件:對于C2連續的三次B樣條閉曲線,因為首末數據點相重,q0=qm,不計重復,方程減少一個,又首末三個控制點依次相重,即dn-2=d0,dn-1=d0,dn=d2;未知控制點的數目減少了三個,所以方程個數與未知數個數相同,上述線性方程組可改寫成如下矩陣形式,

解方程,即可求出全部控制點.
對于B樣條開曲線以及不要求在相重的首末數據點q0=qm處C2連續的三次B樣條B曲線,n-1個方程不足以決定其包含的n+1個未知控制頂點,還必須增加兩個通常由邊界條件給定的附加方程,這樣求解三次B樣條控制頂點的線性方程組可以寫成如下矩陣形式.
2.1 B樣條曲面重構
對于B樣條曲面的重構,實際上就是已知型值點Qij(i=0,1,…,m;j=0,1,…,n);求相應均勻雙三次B樣條曲面的控制點陣pij(i=-1,0,1,…,m+1;j=-1,0,1,…,n+1)具體的方法就是:
1)對u向的n+1組型值點,按照B樣條曲線的邊界條件及反算公式,求得由n+1組B樣條曲線構成的控制多邊形,這里每條曲線均要加兩個邊界條件,故會得到(m+3)*(n+1)個特征網格控制點Vij(i=-1,0,1,…,m+1;j=-1,0,1,…,n+1).
2)把Vij看作是v向的(m+3)次B樣條曲線反算,即可得到雙三次B樣條曲面的控制點pij(i=-1,0, 1,…,m+1;j=-1,0,1,…,n+1).如果從0開始算點,pij(i=0,1,…,m+2;j=0,1,…,n+2).
2.2 插值曲面的光順性問題
利用上述方法得到的曲面,在片內滿足C2連續,但在片間的公共邊界以及多個片相交的角點處,只滿足了位置連續,需要進行光順處理.
光順方法大體上可以分為兩大類:局部光順法和整體光順法.局部光順法只是對少數“壞點”進行修改,具有較強的局部修改能力,并且計算速度快,但是“壞點”較多時光順的效果不理想;整體光順法是對全部型值點進行修改,曲面整體光順效果較為理想,但計算量大,收斂速度慢.光照反射特性法屬于整體光順法,通過反射線來檢查曲面的光順性.能量法是典型的整體光順法,使曲面的整體能量在一定的約束條件下達到最小.但是用能量法光順曲面,不論原來的曲面是什么形狀,光順后的曲面趨于向平面變化,導致曲面變形,而且計算速度受控制頂點個數的限制,不適合處理大量數據.小波分析法是將曲面分解為低分辨率曲面和細節曲面,分解次數越多,曲面越光順.分解算法和重構算法速度快,適合大數據量曲面光順.無論采用哪種方法,要達到所有截面曲線和控制曲線都光順不是輕而易舉的,要求設計員擁有相當的經驗積累和理論基礎,經過耐心細致艱巨的工作才能實現.
曲面的光順問題迄今沒有得到圓滿的解決,人們期待在這方面得到突破性的進展.
在反算控制點過程中,用的參數化方法不同,最后的結果也有差別,比較而言采用積累弦長參數化法最合適.均勻參數化方法比較適合于數據點多邊形各邊接近相等的場合.積累弦長參數化法如實反映了數據點按弦長的分布情況,一直被認為是最佳參數化法.它克服了數據點按弦長分布不均勻情況下采用均勻參數化所出現的問題.向心參數化方法考慮了數據點相鄰弦線的折拐情況,當數據點有急劇拐彎時,這種方法效果很好.所以,在實際應用中要根據數據點的分布情況選擇合適的參數化方法來反算控制點.本文給出了一種反算三次B樣條插值曲線和雙三次B樣條插值曲面控制頂點的簡便算法.其實踐證明:該算法穩定可靠,速度較快,結果也能令人滿意.當用戶對邊界條件無特殊要求時,適合采用本算法.
[1]王飛.三次B樣條反算的一種簡便算法[J].北京郵電大學學報,1996,(3):84-90.
[2]施法中.計算機輔助幾何設計與非均勻有理B樣條[M].北京:北京航空航天大學出版社,1994.
[3]呂丹,等.三次NURBS曲線控制點的計算[J].彈箭與制導學報,2006,(4):357-359.
[4]彭偉.逆向工程中的NURBS曲面重構研究[D].南京:南京理工大學,2003.
[5]徐文鵬.基于人體特征的服裝cad參數化技術研究與應用[D].杭州:浙江大學,2004.
[6]王少純,等.基于NURBS方法的三維型腔曲面的幾何描述及網格域的生成[J].哈爾濱工業大學學報,2000,32(2).
[7]楊曉靜.B樣條曲面構造方法的研究和實現[D].北京:北京工業大學,2003.
Ca lcula ting Con trol Poin tsof NURBS
WANG Ling-yun
(Institute of Scien tific Research,Shandong Fashion College,Tai’an,271000,China)
Reverse engineering(RE)is a key techno logy of advancedm anufac tu ring.A sone of im po rtan t technicalways to design andm anufacture comp lex industrialp roducts,reverse engineering is taken into a accountw idely in the field of CAD/CAM.Especially,free-form surface reconstruction is a challenging task andw ill catchmore attention in futurewo rk.Surface reconstruction is themost important techno logy in RE. There are two p revailing su rface reconstruc tionm ethods.They are NURBS su rface reconstruc tionm ethod and triangle surface reconstructionm ethod.This thesism akes som e researchwork on NURBS surface reconstruction.Our paper p roposed a simp lem ethod which can calcu late the contro l points in NURBS curves and surfaces.This arithm etic app lies to quasi-unifo rm B-sp line and non-unifo rm B-sp line.The arithm etic uses non-node boundary cond itions and does no t need in terac tion,w hich can simp lify the operation p rocess.
reverse engineering;non-unifo rm B-sp line;characteristic point;con tro lpoints
TP301.6
A
1672-2590(2010)03-0040-04
2010-04-06
王凌云(1970-),女,山東泰安人,山東服裝職業學院科研所講師.