朱美玲,董玲珍
(1.太原城市職業(yè)技術(shù)學院,太原 030027;2.太原理工大學理學院,太原 030024)
曲面造型是計算機輔助設計(CAD)和計算機圖形學(CG)領(lǐng)域最活躍、關(guān)鍵的學科分支之一[1-2]。目前,計算機中的表面建模技術(shù)被不同的應用領(lǐng)域所需求[3]。為滿足不同的應用需求,基于不同的表示方法發(fā)展衍生了相應的曲面造型技術(shù)。根據(jù)曲面變形的機理可大致分為4類[4-5]:基于幾何模型的曲面變形、自由變形(FFD)、基于物理模型的變形方法和基于幾何約束優(yōu)化的變形。B樣條曲面作為一種應用廣泛的逼近樣條類,它允許曲面可以局部控制,同時因為樣條曲面是線性連續(xù)且光滑的曲面,所以用樣條曲面來定義變形的參數(shù)空間可以使變形更加精確。
本文首先介紹了雙三次B樣條曲面的變形基礎(chǔ)和曲面拼接的表達式,提出了一種雙三次B樣條曲面生成的改進算法,然后采用點約束、目標曲線約束兩種幾何約束驅(qū)動雙三次B樣條曲面變形,在點約束求解中以控制節(jié)點位移最小為目標函數(shù),使用LINGO軟件計算得到該目標下的最優(yōu)解,并給出計算實例驗證了該方法的可行性。
一個雙三次B樣條曲面用下面的等式來表示:
式中,G代表控制節(jié)點矩陣。
等式(1)也可用如下等式來表示:
使用方程(2),當u和v由0到1改變時,能夠生成一個雙三次B樣條曲面,它能有效地提高生成效率。圖1為一個雙三次B樣條曲面的例子。
圖1 雙三次B樣條曲面Fig.1 Three B-spline surfaces
為了實現(xiàn)雙三次B樣條曲面拼接,擴展控制節(jié)點矩陣G,然后以每次4×4的方式獲取單面的控制節(jié)點矩陣來拼接。下面是一個控制節(jié)點矩陣。
拼接完Gexpand后,獲得了9個4×4的控制節(jié)點矩陣。圖2表示了在這個合成曲面中單面位置。
圖2 單面和合成面的關(guān)系Fig.2 The relationship between single surface and synthesis surface
這個合成面在變形過程中始終保持C2的連續(xù)性。如圖3所示。
圖3 改變控制節(jié)點后的變形Fig.3 The deformation after change control nodes
目前主要有兩種常用的幾何約束用于變形操作:離散約束和連續(xù)約束。其中離散約束包括空間點信息、控制頂點位移等,連續(xù)約束包括曲線和子曲面等。由于連續(xù)約束的處理將給求解引入非線性的約束,使得變形過程復雜且難以收斂,因此主要關(guān)注離散約束類型,連續(xù)約束可通過離散采樣等方法轉(zhuǎn)化為一般的離散約束類型。
在平面上點pm(u,v)處,位置約束(2)和切線約束(3)形成了基本約束,能夠被寫成[6]:
其中N=(A,B,C)是變形后曲面在pt上的法向量,Pt為目標點。
考慮方程(1)和點約束,因而,目標是計算一個新的控制節(jié)點矩陣。
節(jié)點控制矩陣是4×4方陣,考慮到未知量的個數(shù)和曲面變形的效果,將控制節(jié)點矩陣中4個坐標值設為變量,其余12個坐標值保持固定,變形問題在各個維度上就轉(zhuǎn)換為求解4元一次方程組的問題,所以是以最小控制節(jié)點位移求解的最佳模型。為了降低復雜度,在變形過程中設 Px10,Px11,Px12,Px13是變量,其他的都是固定值。這樣,點約束的求解轉(zhuǎn)變成線性等式的求解。在點約束下,沿著坐標y軸,得到等式(4)。
建立以最小控制節(jié)點位移求解的最佳模型。使用LINGO計算新的控制節(jié)點解。圖4展示了求解節(jié)點約束解的過程。
圖4 點約束的求解過程Fig.4 The solving process of point constraint
目標曲線約束是一種連續(xù)的約束,解決這種約束將給系統(tǒng)引入非線性約束,會使得解決過程復雜而且難以聚合[7]。因此,在解決這種約束之前,先分離目標曲線為離散的點,然后像解決多個點約束一樣解決它。比較等式(4),在目標曲線約束下我們沿著y軸能夠獲得等式(5).
式中,AY表示系數(shù)矩陣,AYb表示常數(shù)矩陣,則(5)可以表示為:
使用最小二乘法得到等式(7):
其中NAY=AYT×AY,并且有:
如果NAY是可逆,則:y=NAY-1·NAYb
否則:y=NAY+·NAYb
其中NAY+是矩陣NAY的偽逆。
輸入需變形的曲面面片5(如圖2)上的點以及目標點,利用如圖4所示的求解過程,求解3個例子。
例1:
表1 變形信息Tab.1 The deformation information
圖5 求解點約束(例1)Fig.5 The solving point constraint(example 1)
圖5展示了表1給出的變形信息,即面片5上點 pm(0.50,0.50)變形到空間點 pt(0.00,5.00,0.00)的變形結(jié)果。
例2:
表2 變形信息Tab.2 Deformation information
圖6 點約束求解(例2)Fig.6 Solving point constraint(example 2)
圖6展示了表2給出的變形信息,即面片5上點 pm(0.00,0.00)變形到空間點 pt(3.00,5.00,3.00)的變形結(jié)果。
圖7展示了表3給出的變形信息,即面片5上點 pm(0.80,0.90)變形到空間點 pt(3.00,5.00,3.00)的變形結(jié)果。圖5-圖7給出了以控制節(jié)點最小位移求解點約束目標方程的結(jié)果。
圖8 求解目標曲線約束(例4)Fig.8 Solving point constraint(example 4)
例3:
表3 變形信息Tab.3 Deformation information
圖7 求解點約束(例3)Fig.7 Solving point constraint(example 3)
如圖8(a)所示,在原始曲面面片上選取5個目標點,將目標曲線離散為5個點(用紅色繪制),通過MATLAB獲得變形結(jié)果。
例4:
表4 變形信息Tab.4 Deformation information
從圖8(b)及圖8(c)中可以看出隨著單個面片向著目標曲線趨近時,與其拼接的曲面也都相應的發(fā)生改變最終維持了整個復合曲面的C2連續(xù)性。
在圖9中可以看出,需要變形的曲面沒有完全通過第1、3、5個目標點,而較好的通過第2、4個目標點。
例5:
表5 變形信息Tab.5 Deformation information
圖9 求解目標曲線約束(例5)Fig.9 The constraint of solving point(example 5)
文章論述了以幾何約束來驅(qū)動雙三次B樣條曲面。雙三次B樣條曲面采用矩陣的表達形式。在這一基礎(chǔ)上對控制節(jié)點矩陣進行擴充,并且按照4×4的規(guī)模進行分割從而實現(xiàn)雙三次B樣條曲面的拼接。各個曲面面片拼接后滿足C2連續(xù)度。之后,對幾何約束,包括點約束,目標曲線約束進行分析。開發(fā)系統(tǒng)能夠完成接收變形曲面面片標號,面片上的點以及空間目標點等用戶輸入信息,計算參數(shù),調(diào)用LINGO程序進行計算,展示變形結(jié)果等功能。在目標曲線約束求解中借助MATLAB,模擬得到變形結(jié)果。但還應進一步研究其它一些約束表達與實現(xiàn)(如目標曲線的切線約束等),開發(fā)以點約束驅(qū)動曲面變形的程序,使其能夠?qū)崿F(xiàn)用鼠標拾取曲面上點,拖動鼠標實現(xiàn)曲面的變形。
[1]LI HAN,F(xiàn)AFFAELE DE AMICIS,etal.Interactive B-spline Surface Modeling based on Force Density Method[J].Journal of Image and Graphics,2009,14(9):1900-1907.
[2]CHEN YUEPING,LI SHUPING,SHENYANHUI,et al.Key technology study on generating bi-cubic B-spline surface[J].Machinery Design & Manufacture,2010(4):225-228.
[3]GUILLET S,LEON J C.Parametrically deformed free-form surfaces as part of a variational model[J].Computer Aided Design,1998,30(8):621-630.
[4]王青,柯映林,李江雄.基于力密度方法的NURBS曲線和曲面變形框架[J].機械工程學報,2007,43(3):135-142.
[5]NEALEN A,IGARASHI T,SORKINE O,et al.Laplacianmesh optimization[C]∥Proceedings of ACM GRAPHITE,2006:381-389.
[6]HU S S,ZHU Q X.Stochastic Optimal Control and Analysis of Stability of Networked Control Systems with long delay[J].Automatica.2003,39(11):1877-1884.
[7]BAUER P H,SICHITIU M.Total Delay Compensation in LAN Control Systems and Implications for Scheduling[J].Proc of the American Control Conference,Arlington,2001(6):4300-4305.