如何用FreeCAD計算3D模型體積?

電腦輔助設計(computer aided design, CAD)最初只有2D,例如AutoCAD。3D CAD剛出現時,許多製圖高手覺得建3D模型再轉2D圖是脫褲子放屁。但因越來越多新功能2D CAD辦不到就是辦不到,3D CAD才有今天。其中有個功能不起眼但很重要,就是算體積(volume)

體積為何重要?因為有體積,就能算重量(weight),而重量是非常關鍵的設計目標。舉凡交通工具、運動器材、筆電手機、槍砲武器等等等,都是越輕越好。想cost down?更要減重。設計超重這種事,不能等實物做出來才知道。

那麼,如何用FreeCAD計算3D模型體積?

Drawing software:FreeCAD 1.0.0 Part Design & Spreadsheet

阿伯眾裡尋他千百度,那人卻在燈火闌珊處。這功能躲在Spreadsheet工作平台儲存格裏,你得像Excel般輸入指令才能算體積!夭壽吧……XD

唉,有總比沒有好。請先在Part Design工作平台建立一個長寬高都10mm的正方塊如下圖:

Drawing software:FreeCAD 1.1.0 Part Design

建立方塊是因為體積面積都好算。你可以自己算然後和FreeCAD的結果比較,不一樣就是你算錯……XD

接下來請參考前文[用FreeCAD在工程圖中輕鬆畫表格]進入Spreadsheet工作平台建立新表格,然後在A欄輸入標題如下圖:

Drawing software:FreeCAD 1.1.0 Spreadsheet

標題是為了方便說明,非必要。本文買一送二,買體積面積質量中心。指令語法如下:

計算體積指令:
=<<實體名稱>>.Shape.Volume

計算面積指令:
=<<實體名稱>>.Shape.Area

計算質心
x座標指令:
=<<實體名稱>>.Shape.CenterOfMass.x
y座標指令:
=<<實體名稱>>.Shape.CenterOfMass.y
z座標指令:
=<<實體名稱>>.Shape.CenterOfMass.z

本範例只有一個實體,所以我們可以在B欄輸入簡化指令如下:
B1儲存格:=Body.Shape.Volume
B2儲存格:=Body.Shape.Area
B4儲存格:=Body.Shape.CenterOfMass.x
B5儲存格:=Body.Shape.CenterOfMass.y
B6儲存格:=Body.Shape.CenterOfMass.z

結果如下圖:

Drawing software:FreeCAD 1.1.0 Spreadsheet

計算重量需要密度,我們在B8儲存格輸入的密度7.8,然後在B9儲存格輸入公式如下:
=B1*B8/1000

結果如下圖:

Drawing software:FreeCAD 1.1.0 Spreadsheet

Part Design工作平台修改方塊尺寸、編修實體後,你會發現表單Spreadsheet儲存格的數值自動更新。若未自動更新,請點選手動更新如下圖:

Drawing software:FreeCAD 0.20 Spreadsheet

如果你的檔案裏只有一個實體(Body),無論這實體叫什麼名子(Body1實體1,或其他),你都可以用=Body.代表此一實體,也就是說=Body.Shape.Volume計算結果與=<<實體1>>.Shape.Volume完全一樣。但若檔案裏有2個(含)以上實體,=Body.就只代表第一個建立的實體,其他實體就必須以=<<實體名稱>>.起頭才能得到正確數值。只要你輸入的實體名稱正確,<<>>符號程式會自動加上去,請嘗試看看。

誠心建議FreeCAD還是把計算體積、面積、質心、重量列入標準功能放在工具列。這麼重要的功能藏得這麼隱密,會趕走很多使用者喔。

(FreeCAD 1.1.0版適用)

留言

  1. 謝謝你的指導與分享,關於物體的體積與重量可以使用巨集工具中的"FCinfo "自動產生,具有直接查詢功能喔。

    回覆刪除

張貼留言

這個網誌中的熱門文章

免AutoCAD!用FreeCAD TechDraw出工程圖

FreeCAD操作介面與設定指南

用FreeCAD進行圖片測繪