挑戰使用FreeCAD製作曲面模型!來製作加入自由曲面的造型!!
至今為止本文介紹的實體建模範例中,基本上都是方方正正的形狀,感覺上它就是不擅長含有曲面的複雜形狀。如果要做出後者那樣的3D模型,就要使用曲面或是多面體會比較有利。
曲面建模在自動車車體的外觀設計上是全部都會使用到,即便是在模具設計上也非常活躍。實體建模是一種內在完全是實心的建模方式,但曲面模型通常只有表面、內部是空的。就請想像一下類似紙模型那樣的感覺。
也是這樣,這次想要一面介紹FreeCAD用來建立曲面模型的工作區模組「Surface」、一面來挑戰使用到自由曲面的建模方式。順帶一提,筆者本人就不擅長曲面建模,這裡就只介紹非常基本的項目,所以這次的內容也希望能幫助到「希望第一次挑戰加入曲面設計的建模」的讀者。
從曲面建模的最基本開始
即便是在FreeCAD下進行曲面建模,首先也要從繪製曲線開始。只不過,曲線繪製的過程並不需要像實體建模那樣一定要把線的軌跡完全連接封閉才行。
如前所述,要在FreeCAD中畫線,可以在「Sketcher」或「Draft」工作區中進行,這次使用的是在實體建模中已經用慣的Sketcher工作區(圖1)。
圖1 建立新的Sketch草繪
然後繪製出如圖2那樣的線段,這兩條線必須要連結在一起,因此請使用幾何限制指令來讓兩條線的端點確實重合再一起。
圖2 建立曲面基礎的線段
對於第一次挑戰曲面建模的人來說,可能很容易會有種根本搞不懂這些是要幹嘛的困擾。不過只要能一路把這個做出「面」流程讀過一遍,就會有「啊,原來是這樣」的理解。
切換至Surface工作區
畫好線斷後,請切換至Surface工作區中(圖3)
圖3 切換到Surface工作區
然後會看到視窗上方指令圖示區中有兩個看起來在表示「面」的藍色圖示,請選擇右側的那個藍色圖示指令(圖4)
圖4 填滿境界線曲面指令(Fill boundary curves)
執行此指令之後,就會看到左邊複合頁面中會出現如圖5那樣的輸入欄位。要填滿曲面的選項,共有「Stretch」「Coons」「Curved」三種。根據FreeCAD維基百科的說法,Stretch是「平坦式縫面」、Coons是「略帶圓滑的縫面」、而Curved就是「圓滑式縫面」。原來如此,不過還是不懂...(笑)
圖5 選擇Stretch後的結果(其實Coons也是同樣的結果)
操作的方式,如上圖所示是先按下[Add Edge]按鈕之後,再選擇之前繪製的兩條線段。如果選擇「Stretch」「Coons」這兩種選項的話,會得到類似圖5這樣的帶有弧線的三角形。如果選擇Curved的話,則會得到圖6那樣的長方形。據說,選項越靠近Curved這邊,會是越圓順的面。
圖6 選擇Curved後的曲面結果
最後就選擇Curved的選項,完成之後也會在模型樹中看到這個項目。
圖7 完成的曲面
這個選擇Curved所做出來的形狀,因為是由兩條直線為基礎做出來的,所以乍看之下一點曲面的感覺都沒有(笑)。總之,這裡先做出了一個平的面出來了。當然,如果修改原本草繪的尺寸數值,這個面的形狀也會跟著發生變化(圖8)。
圖8 將草繪的長由35mm改成22mm,面的形狀也跟著變化
描繪B雲形線(B-Spline)
不過,這個單純改變線長而曲面形狀並沒有甚麼太大差異的變化,看起來也沒有甚麼意思。因此,這裡要從剛才的「直線」建立曲面,試著改成使用「B雲形線」建立曲面。於是請再回到Sketch工作區中,點選「Create B-spline(建立B雲形線)」指令。這個指令在以前介紹過,就是用來繪製曲線的指令之一。
圖9 繪製B雲形線
為了能讓曲線彎來彎去,所以這裡就一個點一個點點選下去,畫出看起來有點鋸齒狀的線段。(圖10)
圖10 乍看之下好像是鋸齒,畫出來的曲線形狀很令人害怕...
不過,按下滑鼠右鍵(或是鍵盤ESC鍵),結束繪製功能後,就會變成雲形線了(圖11)
圖11 按下右鍵結束指令,就會確實變成曲線
如果選擇被小圈圈圍起來的紅點,然後拖拉位置,曲線的曲率就會跟著改變(圖12)。注意,不是直接點選白色線段,而是要點選紅點。
圖12 試著改變曲率
這樣就完成了曲線的製作。接下來要把曲線畫在XZ平面上,所以從XZ面看過去,剛才畫的曲線,就像是一條直線而已(圖13)。這是理所當然,因為是從垂直的方向觀察。
圖13 從垂直方向觀看,曲線就看起來像是一直線了。
然後根據剛才同樣的原則,畫出一條從原點附近往上跑的曲線(圖14)
圖14 畫出第二條曲線
這兩條曲線一起在畫面中出現的話,會像圖15的樣子。接下來就要使用這兩條曲線鋪出曲面了。
圖15 預備鋪出曲面的兩條曲線
再度回到Surface工作區
接下來重新回到Surface工作區,如前面一樣,選擇「Fill boundary curves」指令,然後點選填滿形式「Stretch」或「Coons」會得到圖16的結果,如果選擇「Curved」則是圖17的結果。
圖16 選擇「Stretch」或「Coons」的結果
圖17 選擇「Curved」的結果
這裡也採用「Curved」的結果,看到的就是很曲面型態的面(圖18)
圖18 完成的曲面
當然,如果去修改草繪的曲線形狀,曲面的形狀也會跟著自由自在的變化(圖19)。此外,雲形線也可以標註尺寸,所以使用尺寸數值來控制曲面變化也沒有問題。
圖19 調整草繪的樣子,曲面也會發生變化
接下來,在完成的曲面的旁邊,試著新加上一個曲面。於是請在XY平面上,隨便畫出兩條曲線,然後根據前面的步驟,將這兩條曲線變成曲面(如圖20、21)
圖20 再畫出兩條曲線
圖21 將新建的兩條曲線做成曲面
新做出來的曲面,和前面做的曲面放在一起看,會像是圖22那樣的狀況
圖22 兩個曲面放在一起
將相離的面諭面之間鋪上曲面
然後要在這兩個相離的面之間也鋪上面。這裡要切換至「Part」工作區中,選擇兩個面之間想要連接起來的兩條邊線,再點選如圖23那樣的指令,就會發現之間有個隨意做出來的面連接了原本分離的兩個面(圖24)。
圖23 選擇Create ruled surface指令
圖24 簡單就將兩個面連起來
但是從不相連的兩個面的邊線去舖面的指令只存在於「Part」工作區中。另外將曲面對稱鏡射的指令也是放在Part工作區中。感覺起來應該要將這幾個指令都合併到Surface工作區中會比較便利...。目前可能還是在開發中,所以沒有整合起來。
使用曲面建立出封閉的形狀
應用之前的操作程序,試著重複畫出另外的形狀。首先在Sketch工作區中,於XY面上畫出類似圖25那樣的直線與曲線。直線是從原點開始往X方向拉長20mm,然後再從直線的端點往直方向拉出曲線。此外直線與曲線相連的端點,請務必使用點限制將之重合在一起。
圖25 畫出第一條曲線
第二條曲線放在XZ面上,用同樣的程序繪製(圖26)
圖26 第二條曲線
然後切回到Surface工作區中,選擇兩條線彎曲的部分來做出曲面(圖27)。製作曲面時小心不要選到直線的部分。
圖27 做出曲面
此時,就會看到偏離XY平面20mm處,產生了如同圖27那樣的曲面。這是為了讓YZ平面變成靜射面的關係,才這樣繪製。因此接下來進入Part工作區,選擇剛才建立的曲面,然後點選「Mirroring…(鏡射)」指令(圖28)
圖28 將選擇的形狀進行鏡射
接下來在複合頁面的鏡射面(Mirror plane)選項中,選擇YZ面(圖29)
圖29 將YZ面設定為鏡射面
得到的結果,就會像圖30那樣出現鏡射完的兩個曲面。
圖30 完成鏡射
再來就是要把這兩個鏡射曲面舖面連接起來。這也是繼續留在Part工作區中,利用「Create ruled surface」指令,使用八個邊界線做出各個連接面。也就是說,選擇兩兩邊界線,執行「Create ruled surface」指令四次(圖31)。
圖31 將兩個鏡射區面連成一個大面
最後就會縫成類似圖32那樣的封閉曲面。當然,這個封閉曲面的內部是空的,並不是實體。
圖32 完成封閉曲面
利用曲面來進行實體加工
最後,來試試看使用曲面來替實體模型進行造型加工。首先,就是做出一個類似圖33那樣的長方體。
圖33 預備用來加工的長方體
然後在圖33的長方體上,再做出一片要來切割長方體的曲面(圖34)
圖34 穿過長方體、預備切割的曲面
在這個狀態下,可能會看不清楚曲面,所以可以先把長方體的特徵「Pad」隱藏起來(圖35)。接下來,就是要把長方體的上面切出像這個曲面一樣的形狀。
圖35 將方塊隱藏起來觀看曲面的形狀
在其他CAD軟體之中,這個曲面加工是用布林運算進行,但FreeCAD的布林運算功能稍差,所以要在Part工作區中使用[Slice apart(切離)]這個指令才行(圖36)。
圖36 Slice apart指令
然後在模型樹中依序選擇「Pad」、「Surface」這兩個特徵,然後執行指令。如果選擇順序錯誤,切割就會失敗,請務必小心。切完的模樣如同圖37所示,並且會在模型樹中看到「Exploded Slice」這個項目出現,並且會看到用來切割的曲面消失了。
圖37 分割後的狀態
將Exploded Slice展開後,會看到底下有「Slice.0」、「Slice.1」兩個項目。Slice.1是長方體的上部,之前建立的曲面就是上下兩塊的邊界,只不過現在被切割開成兩塊了(圖38)。
圖38 長方體被切割成上下兩塊
最後將Slice.1刪除,就會得到如圖39一樣,長方體的上側被切成歪斜曲面的樣子了。
圖39 被切成曲面形狀的長方體
曲面建模要做到像捏黏土那樣的方式來建模是很困難的(現在高階的CAD大多可以),所以通常要先在腦中想好希望建立出來的形狀。如果是毫無計劃就開始畫的話,就會像這次示範的例子一樣,很容易做出很無聊、單調的形狀。而使用FreeCAD來建立曲面模型就更需要先計畫好形狀、甚至是先手繪出模樣,再進行建模會比較好。
===
沒有留言:
張貼留言