專利名稱:一種草圖式輸入的三維網(wǎng)格模型制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種三維造型方法,特別涉及一種卓圖式輸入的三維網(wǎng)格模型制作 方法。
背景技術(shù):
三維造型在動漫游戲、工業(yè)設(shè)計和教育中有著廣泛的應(yīng)用。目前的三維造型流 程一般是從一個簡單的基本幾何休(如正方休或球)開始的,通過一系列的變形和 組合獲得一個復(fù)雜的形狀,各種變形的技術(shù),如自由變形和線條變形,都是通過操 縱控制三維模型的點邊面獲得一個形狀準(zhǔn)確、表面光滑的三維模型,直接控制二維 模型的點邊面的缺點是操作比較復(fù)雜,對空間想象能力要求比較高。
近幾年來,基于草圖式的造型制作方法正成為研究的熱點。Zeleznik等在[R. C. Zeleznik, K. P. Herndon, and J. F. Hughes. SKETCH: An interface for sketching 3D scenes. SIGGRAPH 96 Confetence Proceedings, pages 163-170, 1996.]中提出了一種基于了勢 的CSG(構(gòu)造實體幾何)造型方法,該方法使用基于手勢的界面使得CSG的造型變得 簡單。在這個思想的基礎(chǔ)上,Igarashi在[Igarashi, T., Matsuoka, S., Tanaka, H., Teddy: A sketching interface for 3d freeform design. In ACM Siggraph, 409-416, 1999.]中提出了 一種基于草圖的三維自由曲面造型方法,該方法使用二維的草圖輸入進行二維的圓 形物體的造型,他同時提出了幾種相關(guān)造型方法的卓圖操作方式。作為開創(chuàng)性的方
法,其缺點是草圖輪廓線無法被編輯使得無法準(zhǔn)確地控制二維模型的形狀,卓圖 式操作的不足使得無法設(shè)計復(fù)雜的模型。
最近幾年,草圖式造型的方法得到進一步的發(fā)展,Mori在[Mori, Y., Igarashi, T., Plushie: An Interactive Design System for plush toys, ACM SIGGRAPH, 2007.]中提出了 一種基于充氣方式的玩具造型方法,在該方法中,不脊模型處于仟何設(shè)計階段,二 維模型總是像氣球一樣保持著充氣的狀態(tài)。Zimmermann在[Zimmermann, J., Nealen, A., Alexa, M., SilSketch: Automated sketch-based editing of surface meshes, Eurographics workshop on sketch-based interfaces and modeling, 2007.]中提出了一種基于單圖的二維表面編輯方法,該方法在編輯二維物體表面的時候,保持模型的表面特征。Nealen 在[Nealen, A., Igarashi, T., Sorkine, O., Alexa, M., FiberMesh: Designing freeform surfaces with 3D curves, ACM SIGGRAPH, 2007.]中提出了一種用曲線編輯二維物休表 面的方法,該方法在三維表面定義一系列曲線,然后通過改變曲線的形狀改變二維 表面的形狀。這些方法雖然在不同的方面完善了草圖式的造型方法,但在控制二維 模型形狀的精確度和生成模型的網(wǎng)格均勻度和光滑度方面還需要進一步的改進。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種精度容易控制,模型網(wǎng)格均勻和光滑的草 圖式輸入的二維網(wǎng)格模型制作方法。
為解決該技術(shù)問題本發(fā)明采用的技術(shù)方案為-
一種草圖式輸入的三維網(wǎng)格模型制作方法,艽特征在于包括下列步驟
1) 用鼠標(biāo)或繪圖筆在計算機屏幕上繪制一根封閉的二維,圖輪廓線;所 述封閉的二維草圖輪廓線是由若干條離散的長度不均勻的直線段組成的;也可以在 其它有屏幕的設(shè)備上繪制封閉的二維草圖輪廓線;
2) 采用頂點減少法和Douglas-Peucker法去除過密的頂點,將二維草圖輪 廓線轉(zhuǎn)化為帶有控制頂點的三次樣條曲線;
3) 通過移動、刪除或增加步驟2)得到的三次樣條曲線的控制頂點來改變 三次樣條曲線的形狀,獲得預(yù)期的三維模型的輪廓形狀;
4) 將通過步驟3)改變后的三次樣條曲線離散為由若干條等長度直線段組 成的多邊形;
5) 將多邊形進行二角化,牛成網(wǎng)格均勻的二維網(wǎng)格;
6) 用質(zhì)點彈簧模型調(diào)整二維網(wǎng)格頂點的位置使得靠近輪廓線附近的網(wǎng)格 密一些;
7) 將步驟6)中的二維網(wǎng)格頂點位置抬高,將二維網(wǎng)格變成二維網(wǎng)格;
8) 以三維網(wǎng)格的邊界所在的面為對稱面,復(fù)制一個對稱的三維網(wǎng)格,然 后將兩個三維網(wǎng)格合并為一個封閉的三維網(wǎng)格,形成三維網(wǎng)格模型。
9) 采用拎普拎斯算子對二維網(wǎng)格模型的網(wǎng)格進行光滑處理,得到最終的三維模型。
在步驟l)中,直線段的端點位置是根據(jù)鼠標(biāo)或繪圖筆在計算機屏幕上移動時的 位置確定的。
在步驟2)中,將二維草圖輪廓線自動轉(zhuǎn)化為二次樣條曲線,其目的是為了編輯 草圖輪廓線以便于精確控制三維模型的形狀。在將二維草圖輪廓線轉(zhuǎn)化為三次樣條 曲線之前,由于二維單圖輪廓線的頂點數(shù)量多,局部分布密集,整休分布情況復(fù)雜 的特征,直接擬合邊界頂點的結(jié)果是不理想的,因此需要對頂點進行篩選,去除過 密的頂點,獲得合適的控制頂點擬合三次樣條曲線。
所述頂點減少法是對二維草圖輪廓線的初步處理,它根據(jù)頂點之間的距離,刪 除距離過近的頂點。頂點減少法的詳細(xì)步驟算法如下
a) 確定閥值e;
b) 設(shè)置二維單圖輪廓線的第一個頂點為起始點;
c) 依次檢查相鄰的下一個頂點,如果當(dāng)前頂點與前一個頂點的距 離小于閥值時,舍棄當(dāng)前頂點;當(dāng)前頂點大于等于閥值時,記錄當(dāng)前頂點,并將當(dāng) 前頂點設(shè)為新的起始點;
d) 反復(fù)進行步驟c),直到最后一個頂點。
所述Douglas-Peucker法可以進一步去掉對二維草圖輪廓線影響小的頂點,保留 影響大的頂點,使得既能保證二維草圖輪廓線的形狀符合邊界特征,又能減少不必 要的控制頂點,該算法記載在"Douglas, D., Peucker, T., Algorithm for the reduction of the number of points required to represent a digitized line or its caricature. The Canadian Cartographer, 10(2), 112-122,1973. " (Douglas, D., Peucker, T.,減少頂點數(shù)的算法用于 表不f圖和漫畫,加拿大制圖者雜志,第10期2巻,1973年)中。該算法的步驟 是
a) 確定一個閥值e ;
b) 連接第一個和最后一個邊界頂點,兩個頂點之間的迕線稱為基準(zhǔn) 線,這兩個頂點為基準(zhǔn)頂點對;
c) 計算這對基準(zhǔn)頂點對之間的頂點到基準(zhǔn)線的距離。如果有一個及一個以上的頂點到基準(zhǔn)線的距離大于s ,將距離基準(zhǔn)線最遠(yuǎn)的頂點記為第n個頂點,刪除 基準(zhǔn)線,并將第一個頂點和第n個頂點記為基準(zhǔn)頂點對,將第n個頂點和最后一個 頂點記為基準(zhǔn)頂點對;如果所有頂點到基準(zhǔn)線的距離都小于等于e ,刪除基準(zhǔn)頂點 之間的所有頂點,只保留基準(zhǔn)頂點對作為基準(zhǔn)頂點對之間曲線的控制頂點。 d)不斷重復(fù)步驟c),直到所有頂點到它們的基準(zhǔn)線的距離都小于等于e 。 所述二次樣條曲線就是用二次方程生成通過控制頂點的曲線,使得二維輪廓線 的邊界光滑。McKinlay, S., Levine, M., Cubic Spline Interpolation, Math45: Linear Algebra(McKinlay, S., Levine, M., 二次樣條曲線,線性方程)網(wǎng)址 http:〃online.redwoods.cc.ca.us/instruct/darnold/laproj/Fall98/SkyMeg/Proj.PDF.公開了該 方法。
在步驟4)中,將步驟3)改變后的二次樣條曲線離散為由若干條等長度直線段
組成的多邊形,采用下列步驟實現(xiàn)
a) 確定直線段的長度;
b) 計算三次樣條曲線的總長度;C)根據(jù)二次樣條曲線的總長度和直線段的長度,計算離散點的位置,將該二次 樣條曲線離散為由若干條等長度直線段組成的多邊形。
在步驟5中,將多邊形進行二角化,生成網(wǎng)格均勻的二維網(wǎng)格。該多邊形二角 網(wǎng)格化的方法參見(Triangle: A two-dimensional quality mesh generator and Delauney triangulator. Jonathan Richard Shewchuk. Computer Science Division, University of California of Berkeley.)將多邊形變?yōu)榈木W(wǎng)格均勻的三角網(wǎng)格。該方法在Delauney算 法的基礎(chǔ)上增加幾何約束(如角度、面積和邊長)的方法,使得二角化后的網(wǎng)格均 勻。
步驟6)采用下列步驟實現(xiàn)
a) 計算二維網(wǎng)格的平均邊長L;
b) 標(biāo)注二維網(wǎng)格頂點的環(huán)的序號。假設(shè)二維網(wǎng)格是由多個頂點環(huán)組成的,將輪 廓邊界線的頂點環(huán)上的序號設(shè)為0,與序號為O的環(huán)相鄰的頂點環(huán)的序號設(shè)為1,依 次將內(nèi)部的頂盧環(huán)標(biāo)注為2, 3,...,直到標(biāo)注所有的頂點環(huán);
c) 設(shè)置二維網(wǎng)格的網(wǎng)格邊的長度。首先將所有的網(wǎng)格邊長度設(shè)置為L,然后,將連接頂點環(huán)序號為0與頂點環(huán)序號為1的網(wǎng)格邊的長度設(shè)為L/3,將連接頂點環(huán)序 號為1與頂點環(huán)序號為2的網(wǎng)格邊的長度設(shè)為L/2;
d)采用質(zhì)點彈簧模型對二維網(wǎng)格進行迭代計算,調(diào)整二維網(wǎng)格的頂點至最佳狀 態(tài),也就是將二維網(wǎng)格的頂點調(diào)整至處于變形能量最小的狀態(tài)。在調(diào)整后的二維網(wǎng) 格中,輪廓線邊界附近的三角形的邊長較短。
上述質(zhì)點彈簧模型中,網(wǎng)格頂點被認(rèn)為是具有質(zhì)量的質(zhì)點,網(wǎng)格邊被認(rèn)為是拉 伸彈簧,用來約束網(wǎng)格邊的拉伸或壓縮。作用在一根彈簧(其兩個端點為P,和P」) 上的力用下面的方程表示
n 1, , n (x, _x,)
ll^ll P'—XJI 其中,klJ
彈簀系數(shù),l,,j是矢量彈簧,^彈簧的初始長度,x,和&是質(zhì)點P,和Pj的位置。在本方 法中,彈簧初始長度等于二維網(wǎng)格的邊長,彈簧系數(shù)與彈簧的長度成反比。
上述調(diào)整二維網(wǎng)格的頂點至最佳狀態(tài),該最佳狀態(tài)的二維網(wǎng)格的頂點位置經(jīng)過 以下方程組的多次迭代計算得到 S = F /附
v , = v +——/w LF
"+; "2 "
x"+1 =x"+v +^ F +1=F(x +1)
V +1 = V肝;+ yW F +1
"表不一個時間點,S是質(zhì)點的加速度,"時間步長,Xn是質(zhì)點的位置,Vn是質(zhì) 點的速度,F(xiàn)。是作用在質(zhì)點上的力。確定了頂點位置也就得到了最佳狀態(tài)的二維網(wǎng)
格。所述質(zhì)點彈簧模型是基于Zhang D. and Yuen, M., Cloth simulation using multilevel meshes. Computers and Graphics, vol.25, no.3, 2001. (Zhang D. and Yuen, M.,基于多層 網(wǎng)格的服裝模擬.計算機和圖形學(xué)雜志(國際刊物),第3期25巻,2001 ^.)中公開的模型。采用質(zhì)點彈簧模型使二維網(wǎng)格具有最小的變形能量,使得調(diào)整后的二維網(wǎng) 格中其輪廓線邊界附近的二角形的邊長較短,從而使根據(jù)二維網(wǎng)格牛.成的三維網(wǎng)格 模型的網(wǎng)格頂點均勻分布。
在步驟7)中,將步驟6)中的二維網(wǎng)格頂點位置抬高,將二維網(wǎng)格變成二維的 網(wǎng)格,采用下列步驟實現(xiàn)
a) 采用Delaunay三角化方法將步驟4)得到的多邊形變成沒有內(nèi)部網(wǎng)格頂點的 三角網(wǎng)格,得到的三角網(wǎng)格中,所有的網(wǎng)格點都是落在輪廓線上的,輪廓線內(nèi)部沒 有網(wǎng)格點;
b) 建立步驟6)得到的二維網(wǎng)格和a)中的三角網(wǎng)格的對應(yīng)關(guān)系,即查找步驟 6)得到的二維網(wǎng)格的每個網(wǎng)格頂點對應(yīng)的a)中的三角網(wǎng)格的二角形,并計算網(wǎng)格 頂點對應(yīng)二角形的重心坐標(biāo);
c) 根據(jù)步驟6)得到的二維網(wǎng)格和a)中的二角網(wǎng)格的對應(yīng)關(guān)系,計算步驟6) 得到的二維網(wǎng)格每個頂點的高度值;
d) 根據(jù)c)得到的二維網(wǎng)格每個頂點的高度值,將二維網(wǎng)格每個頂點位置抬升, 將平面網(wǎng)格變?yōu)槎S的網(wǎng)格。
a)中所述的Delaunay三角剖分法是計算機圖形學(xué)中一個常用的方法,它解決如
何把一個散點集合剖分成不均勻的二角形網(wǎng)格的問題。三角剖分的定義為假設(shè)V 是二維實數(shù)域上的有限點集,邊e是由點集中的點作為端點構(gòu)成的封閉線段,E為e
的集合。那么該點集V的一個三角剖分T氣V,E)是一個平面圖G,該平面圖滿足條
件
參除了端點,平面圖中的邊不包含點槳中的任何點。 參沒有相交邊。
攀平面圖中所有的面都是三角面,且所有二角面的合^是散點集V的凸包。 Kanaganathan, S., Goldstein, N., Comparison of four point adding algorithms for Delaunay type three dimensional mesh generators, IEEE Transactions on magnetics, Vol 27, No 3, 1991 , (Kanaganathan, S., Goldstein, N.,四個基于Delaunay類型的二維網(wǎng) 格生成器的增加點算法的比較,第3期27巻,1991年。)中公開了該Delaunay三角 剖分法。
9步驟9)中,拉普拉斯算了-是一種通用的網(wǎng)格曲面光滑方法,它通過計算一個網(wǎng) 格頂點與其相鄰的所有頂點的位置關(guān)系,移動該網(wǎng)格點的位置,使得網(wǎng)格的曲面光 滑。Hansen,Glen A.; Douglass, R.W; Zardecki, Andrew (2005). Mesh enhancement. Imperial College Press. (Hansen,Glen A.; Douglass, R.W; Zardecki, Andrew (2005》網(wǎng)
格改進算法,帝國學(xué)院出版社)中公開了該方法。
該發(fā)明可以應(yīng)用在動漫游戲的模型設(shè)計制作、布絨或充氣玩具設(shè)計制作。 玩具制作的流程是這樣的,首先按上述方法設(shè)計玩具的三維模型,然后根據(jù)二
維模型設(shè)計玩具的紙樣形狀,然后裁剪布料,最后縫制布料得到玩具實物。"根據(jù)
二維模型設(shè)計玩具的紙樣形狀,然后裁剪布料,最后縫制布料得到玩具實物。"這
幾步方法在申請?zhí)?00810060256.2的專利中己有詳細(xì)記載。 與現(xiàn)有的技術(shù)相比,本發(fā)明的優(yōu)勢休現(xiàn)在如下三點
1) 本發(fā)明提出的單圖式輸入的三維網(wǎng)格模型制作方法,設(shè)計師只要通過鼠標(biāo)或 繪圖筆繪制一根封閉的卓圖輪廓線就能生成三維模型,使二維模型的設(shè)計更加簡單 方便,能夠快速地設(shè)計出三維模型。
2) 本發(fā)明提出的草圖式輸入的二維網(wǎng)格模型制作方法,通過將二維輪廓線轉(zhuǎn)化 為二維網(wǎng)格,再直接提升二維網(wǎng)格的網(wǎng)格頂點位置得到三維網(wǎng)格模型。與現(xiàn)有方法 相比,生成的三維模型表面更加光滑,網(wǎng)格更加均勻,同時,生成二維網(wǎng)格的速度 更快。
3) 本發(fā)明提出的草圖式輸入的三維網(wǎng)格模型制作方法通過將草圖輪廓線轉(zhuǎn)化為 三次樣條曲線,可以任意控制樣條曲線的形狀,與現(xiàn)有的技術(shù)相比,提高了三維模 型的造型質(zhì)量和精度。
圖1為三維模型生成流程圖。
圖2為封閉的二維草圖輪廓線。
圖3為三次樣條曲線。
圖4為修改的三次樣條曲線。圖6為網(wǎng)格均勻的二維網(wǎng)格。
圖7為調(diào)整后的二維網(wǎng)格。
圖8為沒有內(nèi)部網(wǎng)格頂點的二角網(wǎng)格。
圖9為第一類三角形對應(yīng)的二維曲面形狀。
圖IO為第二類三角形對應(yīng)的二維曲面形狀。
圖11為第一類二角形網(wǎng)格頂點提升計算圖。
圖12為第二類三角形網(wǎng)格頂點提升計算圖。
圖13為三維網(wǎng)格模型。
圖14為二維模型。
具休實施方式
一種草圖式輸入的三維網(wǎng)格模型制作方法,它的總休步驟參見圖1:
步驟l:用鼠標(biāo)或繪圖筆在計算機屏幕上繪制一根封閉的二維草圖輪廓線,見 圖2;所述封閉的二維草圖輪廓線是由若干條離散的長度不均勻的直線段組成的,直 線段的端點位置是根據(jù)鼠標(biāo)或繪圖筆在計算機屏幕上移動時的位置確定的,每段直 線段的端點即為二維草圖輪廓線的頂點;
步驟2:采用頂點減少法和Douglas-Peucker法去除過密的頂點,將二維卓圖輪 廓線轉(zhuǎn)化為帶有控制頂點R的三次樣條曲線,見圖3;
步驟3:通過移動、刪除或增加步驟2)得到的三次樣條曲線的控制頂點R來
改變二次樣條曲線的形狀,獲得預(yù)期的三維模型的輪廓形狀,見圖4;
步驟4:將通過步驟3)改變后的三次樣條曲線離散為由若干條等長度直線段組 成的多邊形,見圖5,該步驟采用下列步驟實現(xiàn)
a) 確定直線段的長度;
b) 計算三次樣條曲線的總長度;
c) 根據(jù)三次樣條曲線的總長度和直線段的長度,計算離散點的位置,將該二
次樣條曲線離散為由若干條等長度直線段組成的多邊形。
步驟5:將多邊形進行二角化,生成網(wǎng)格均勻的二維網(wǎng)格,見圖6;
步驟6:用質(zhì)點彈簧模型調(diào)整二維網(wǎng)格頂點的位置使得靠近輪廓線附近的網(wǎng)格密一些,見圖7;該步驟采用以下步驟實現(xiàn)
a) 計算二維網(wǎng)格的平均邊長L;
b) 標(biāo)注二維網(wǎng)格頂點的環(huán)的序號。假設(shè)二維網(wǎng)格是由多個頂點環(huán)組成的,將輪 廓邊界線的頂點環(huán)上的序號設(shè)為0,與序號為O的環(huán)相鄰的頂點環(huán)的序號設(shè)為1,依 次將內(nèi)部的頂點環(huán)標(biāo)注為2, 3,...,直到標(biāo)注所有的頂點環(huán)。
c) 設(shè)置二維網(wǎng)格的網(wǎng)格邊的長度。首先將所有的網(wǎng)格邊長度設(shè)置為L,然后,將 連接頂點環(huán)序號為0與頂點環(huán)序號為1的網(wǎng)格邊的長度設(shè)為L/3,將連接頂點環(huán)序號 為1與頂點環(huán)序號為2的網(wǎng)格邊的長度設(shè)為L/2;
d) 采用質(zhì)點彈簧模型對二維網(wǎng)格進行迭代計算,調(diào)整二維網(wǎng)格的頂點至最佳狀 態(tài),也就是將二維網(wǎng)格的頂點調(diào)整至處于變形能量最小的狀態(tài)。在調(diào)整后的二維網(wǎng) 格中,輪廓線邊界附近的二角形的邊長較短。
步驟7:將步驟6中的二維網(wǎng)格頂點位置抬高,將二維網(wǎng)格變成二維網(wǎng)格,采
用下列步驟實現(xiàn)
a) 采用Delaunay三角化方法將步驟4得到的多邊形變成沒有內(nèi)部網(wǎng)格頂點的二 角網(wǎng)格,見圖8,得到的二角網(wǎng)格中,所有的網(wǎng)格點都是落在輪廓線上的,輪廓線內(nèi) 部沒有網(wǎng)格點。
b) 建立步驟6得到的二維網(wǎng)格和a)中的二角網(wǎng)格的對應(yīng)關(guān)系,即查找將步驟6 得到的二維網(wǎng)格的每個網(wǎng)格頂點對應(yīng)的a)中的三角網(wǎng)格的二角形,并計算網(wǎng)格頂點 對應(yīng)三角形的重心坐標(biāo)。
b)根據(jù)步驟6中的二維網(wǎng)格和a)中的三角網(wǎng)格的對應(yīng)關(guān)系,計算步驟6得到的 二維網(wǎng)格每個頂點的高度值。a)中的二角網(wǎng)格,見圖8,存在兩類二角形
第一類至少有一條邊為輪廓線的邊界;
第二類沒有一條網(wǎng)格邊是輪廓線的邊界。 對于第一類的二角形,其對應(yīng)的二維曲面形狀如圖9所不,在圖中,邊PzP3與 輪廓邊界線重合,而P,P2, PiP3不與輪廓邊界線重合,不與輪廓邊界線重合的邊, 對應(yīng)三維表面的是一段圓弧,其中網(wǎng)格邊中點對應(yīng)弧線的最高點。對于第二類的二 角形,其對應(yīng)的三維曲面形狀如圖IO所示,三條網(wǎng)格邊都對應(yīng)三維表面的是一段圓
弧。提升a)中的二角網(wǎng)格的網(wǎng)格頂點時,首先必須找到其所在的驟6中的二維網(wǎng)格的網(wǎng)格面,然后計算該網(wǎng)格頂點在網(wǎng)格面中的相對位置,用重心坐標(biāo)(u,v,w)表 不,其中u, v, w是介于0到1之間的值。根據(jù)二角形類型的不同,點的提升方法 也不同。
對于第一種三角形,其方法如下如在圖11中,假設(shè)要被提升的網(wǎng)格頂點為
P,網(wǎng)格面為P,P2P3,其中,P2P3與輪廓邊界線重合,而PiP2, P,P3經(jīng)過多邊形內(nèi) 部。首先經(jīng)過網(wǎng)格頂點P做一根平行于網(wǎng)格邊P2P3的線,該線與網(wǎng)格邊P,P2, P,P3分 別相交于Pa和Pb,然后分別計算PA和PB對應(yīng)在弧線上的高度,其計算方法是
其中,L,為網(wǎng)格邊P,P3的長度,L,'為線段P,PA的長度,L2為網(wǎng)格邊P,P2的長度, L2'為線段P,PB的長度。
點P'的位置可以根據(jù)點Pa'和Pb'的位置插値得到
其中,r是線段PAP和PAPB的長度比例。
對于第二種類型的三角形,其方法如下。如在圖12中,假設(shè)要被提升的網(wǎng)格頂
點為P,網(wǎng)格面為P,P2P3,與類型A的三角形不同,PiP2,P2P3,P,P3都經(jīng)過多邊形內(nèi) 部。在提升網(wǎng)格頂點P的時候,首先采用與第一類二解形相似的方法,用公式l和 2計算出Pa和PB對應(yīng)在弧線上的高度點Pa'和PB'。然后延長線段P!P,使之與線段 P2P3交于點Pc,用公式1計算出點PC對應(yīng)點Pc'的位置。
點P'的位置可以根據(jù)點PA', Pb'和Pc'的位置插值得到-
尸'=《+fc -《)xn +(/>(:. _/>r)xr2 (4)
其中,n是線段PAP和PAPe的長度比例,f2是線段P,P和P^c的長度比例。
c)根據(jù)c)得到的步驟6得到的二維網(wǎng)格每個頂點的高度值,將步驟6得到的二 維網(wǎng)格每個頂點位置抬升,將平面網(wǎng)格變?yōu)槎S的網(wǎng)格。
步驟8:以二維網(wǎng)格邊界所在的面為對稱面,復(fù)制一個對稱的二維網(wǎng)格,然后 將兩個網(wǎng)格合并為一個封閉的二維網(wǎng)格,形成二維網(wǎng)格模型,見圖13。
步驟9:采用拉普拉斯算子對三維網(wǎng)格模型的網(wǎng)格進行光滑處理,得到最終的
仏二二xC.
13三維模型,見圖14。
接下來可以根據(jù)得到的三維模型設(shè)計玩具的紙樣形狀,然后裁剪布料,最后縫 制布料得到玩具實物。
權(quán)利要求
1、一種草圖式輸入的三維網(wǎng)格模型制作方法,其特征在于包括下列步驟1)用鼠標(biāo)或繪圖筆在計算機屏幕上繪制一根封閉的二維草圖輪廓線,該封閉的二維草圖輪廓線由若干條離散的長度不均勻的直線段組成;2)采用頂點減少法和Douglas-Peucker法去除二維草圖輪廓線上過密的頂點,將二維草圖輪廓線轉(zhuǎn)化為帶有控制頂點的三次樣條曲線;3)通過移動、刪除或增加步驟2)得到的三次樣條曲線的控制頂點來改變?nèi)螛訔l曲線的形狀,獲得預(yù)期的三維模型的輪廓形狀;4)將通過步驟3)改變后的三次樣條曲線離散為由若干條等長度直線段組成的多邊形;5)將多邊形進行三角化,生成網(wǎng)格均勻的二維網(wǎng)格;6)用質(zhì)點彈簧模型調(diào)整二維網(wǎng)格的網(wǎng)格頂點的位置,使得靠近二維網(wǎng)格輪廓線附近的網(wǎng)格密一些;7)將經(jīng)過步驟6)處理的二維網(wǎng)格的網(wǎng)格頂點位置抬高,將二維網(wǎng)格變成三維網(wǎng)格;8)以三維網(wǎng)格的邊界所在的面為對稱面,復(fù)制一個對稱的三維網(wǎng)格,然后將兩個三維網(wǎng)格合并為一個封閉的三維網(wǎng)格,形成三維網(wǎng)格模型;9)采用拉普拉斯算子對三維網(wǎng)格模型的網(wǎng)格進行光滑處理,得到最終的三維模型。
2、 根據(jù)權(quán)利要求1所述的草圖式輸入的三維網(wǎng)格模型制作方法,其特征在 于步驟9)后面還包括下列步驟10) 根據(jù)步驟9)得到三維模型設(shè)計玩具的紙樣形狀,然后裁剪布料,最后縫制布料得到玩具實物。
3、 根據(jù)權(quán)利要求1或2所述的草圖式輸入的三維網(wǎng)格模型制作方法,其特 征在于步驟7)采用下列步驟實現(xiàn)a) 采用Delaimay三角化方法將歩驟4)得到的多邊形變成沒有內(nèi)部網(wǎng)格頂點 的三角網(wǎng)格;b) 建立步驟6)得到的二維網(wǎng)格和a)中的三角網(wǎng)格的對應(yīng)關(guān)系,即査找步驟6)得到的二維網(wǎng)格的每個網(wǎng)格頂點對應(yīng)的a)中的三角網(wǎng)格的三角形,并計算網(wǎng)格頂點對應(yīng)三角形的重心坐標(biāo);c) 根據(jù)步驟6)得到的二維網(wǎng)格和a)中的三角網(wǎng)格的對應(yīng)關(guān)系,計算步驟6)得到的二維網(wǎng)格每個頂點的高度值;d) 根據(jù)c)得到的每個頂點的高度值,將二維網(wǎng)格每個頂點位置抬升,將平面網(wǎng)格變?yōu)槿S的網(wǎng)格。
4、根據(jù)權(quán)利要求1或2所述的草圖式輸入的三維網(wǎng)格模型制作方法,其特征在于步驟4)采用下列步驟實現(xiàn)a) 確定直線段的長度;b) 計算三次樣條曲線的總長度;C)根據(jù)三次樣條曲線的總長度和直線段的長度,計算離散點的位置,將改 三次樣條曲線離散為由若干條等長度直線段組成的多邊形。
全文摘要
一種草圖式輸入的三維網(wǎng)格模型制作方法,包括如下步驟先用鼠標(biāo)或繪圖筆在計算機屏幕上繪制封閉的二維草圖輪廓線;然后將二維草圖輪廓線轉(zhuǎn)化為三次樣條曲線;再改變?nèi)螛訔l曲線的形狀,獲得預(yù)期的三維模型的輪廓形狀;再將三次樣條曲線離散為多邊形;然后將多邊形進行三角化,生成網(wǎng)格均勻的二維網(wǎng)格;調(diào)整二維網(wǎng)格頂點的位置使得靠近輪廓線附近的網(wǎng)格密一些;然后將二維網(wǎng)格變成三維網(wǎng)格,再復(fù)制一個對稱的三維網(wǎng)格,然后將兩個三維網(wǎng)格合并形成三維網(wǎng)格模型;再對三維模型的網(wǎng)格進行光滑處理,得到最終的三維模型。用該方法制作三維網(wǎng)格模型,制作速度較快,而且三維模型的造型質(zhì)量和精度較好。
文檔編號G06T17/00GK101609564SQ20091010050
公開日2009年12月23日 申請日期2009年7月9日 優(yōu)先權(quán)日2009年7月9日
發(fā)明者張東亮 申請人:杭州力孚信息科技有限公司