鄭祥+謝作如
制作一個鏤空花瓶的想法,最初源于學校開設(shè)甌窯課程的蔣老師。他想做一個瓶身由扭轉(zhuǎn)的柱子構(gòu)成,看起來特別有創(chuàng)意和藝術(shù)感的花瓶,如圖1所示。但是,這種扭轉(zhuǎn)的柱子結(jié)構(gòu)很難用手捏出來,即使捏出來了一時半會兒也很難定型,只能通過灌漿法向模具中灌漿來完成定型。于是,他希望我們能用創(chuàng)客空間里的3D打印機來制作模具。但由于當時的3D建模水平比較弱,我們覺得沒法做出這種扭曲旋轉(zhuǎn)的效果,只好放棄了。直到現(xiàn)在看到了IME3D提供的3D程序員軟件,才想到了解決的方案。
創(chuàng)意分析
一個瓶身由柱子扭轉(zhuǎn)而成的鏤空花瓶,主要由底盤和瓶身兩個部分組成。其中,瓶身是由多根柱子扭轉(zhuǎn)而成的,“如何讓這些柱子均勻地分布在底盤(圓形)的邊緣”成了這個想法能否實現(xiàn)的關(guān)鍵,而在3D建模中柱子與底盤的位置關(guān)系用平面坐標(x,y)就可確定,要想確定柱子的平面坐標(x,y)就需要一定的數(shù)學知識的支持。
3D程序員軟件是一款用代碼編程的形式來實現(xiàn)三維建模的軟件,支持以各種數(shù)學公式生成模型的方式。只要找到柱子旋轉(zhuǎn)的規(guī)律,就能用一個循環(huán)來批量生成旋轉(zhuǎn)的柱子,從而實現(xiàn)這個花瓶的建模。3D程序員學習版的下載地址是http://www.ime3d.com/。
數(shù)學分析
設(shè)定底盤的半徑為30,柱子的平面坐標為(x,y),柱子的數(shù)量為16根,可考慮從以下幾方面思考問題。
思路一:通過圓的函數(shù)公式來尋找柱子的平面坐標(x,y)
圓的函數(shù)公式是(x-a)2+(y-b)2=r2,由于模型的中心位置為原點(0,0),因此該圓的公式可以簡化為x2+y2=r2。設(shè)定底盤的半徑為30,則x的范圍為[-30,30],y坐標則可用x來表示,y=。
然而,思路一中根據(jù)x坐標無法簡單有效地實現(xiàn)柱子在底盤上的均勻分布,如上頁圖2圓的函數(shù)曲線所示,因此放棄思路一。
思路二:通過角度來確定柱子的平面坐標(x,y)
要實現(xiàn)柱子在底盤上位置的均勻分布,其實就是在底盤上進行16等分,而這16個坐標位置則可以用角度θ來表示。通過三角函數(shù)即可得出柱子的橫坐標x=rcosθ,縱坐標y=rsinθ,r為底盤的半徑,θ的范圍是[0,360],如圖3所示。
按照思路二的分析,在編程過程中代表角度的循環(huán)變量θ的變化范圍是0至360度,步長為22.5(即360/16)度,柱子的平面坐標為(rcosθ,rsinθ),r=30。
編程實現(xiàn)
按照以上分析進行編程建模,采用的建模軟件為3D程序員。
步驟一:創(chuàng)建半徑為30,高度為3的底盤
模型拉伸的模型居中屬性設(shè)為:不居中,制作花瓶底盤的效果如圖4所示。
步驟二:通過循環(huán)模塊確定16根柱子的平面坐標
根據(jù)數(shù)學分析中的思路二,可以確定循環(huán)模塊的幾個參數(shù)設(shè)置,循環(huán)變量θ的變化范圍:0~360,循環(huán)步長:22.5(即360/16)度,16根柱子所在平面上的坐標公式:(rcosθ,rsinθ),半徑r:30。
以下是通過以上參數(shù),設(shè)置的尋找16根柱子坐標的編程腳本,柱子截面以圓形為例,編程確定16根柱子的平面坐標具體設(shè)置如圖5所示。
步驟三:通過高級拉伸模塊完成對16根柱子的扭曲拉伸
通過編程腳本中的循環(huán)模塊確定16根柱子的平面坐標后,就可通過高級拉伸模塊完成這16根柱子的添加。
高級拉伸模塊的屬性設(shè)置可自行調(diào)整,高級拉伸制作螺旋結(jié)構(gòu)的瓶身的設(shè)置如圖6所示。
步驟四:通過布爾合并完成底盤和瓶身的合并,如圖7所示。
步驟五:修改參數(shù),調(diào)整模型
根據(jù)生成模型的外觀,適當?shù)剡M行調(diào)整,如將底盤半徑適當擴大為32,效果如圖8所示。
拓展升級
以上是利用三角函數(shù)和圓軌跡的關(guān)系,制作瓶身螺旋結(jié)構(gòu)的花瓶的基本過程。除此之外,可以對模型的高度層數(shù)、扭曲角度,以及循環(huán)體中的循環(huán)步長等參數(shù)進行設(shè)置,可以調(diào)整出不同的效果。其中,高度層數(shù)的參數(shù)設(shè)置為1~5,會展現(xiàn)不同的拉伸效果,而循環(huán)步長則可以改柱子的數(shù)量。
圖9的3D模型是不是很像一個藝術(shù)花瓶,其高度層數(shù)為4。這個螺旋花瓶的腳本代碼如圖10所示。不過,學生說這不像花瓶,倒像果籃,也有學生說這是一個藝術(shù)垃圾桶。但不管如何,這種有規(guī)律的模型結(jié)構(gòu),很適合用3D程序員來實現(xiàn)。
如果對相關(guān)內(nèi)容感興趣,請關(guān)注主持人博客。