2016年10月29日 星期六

(萬聖節題材) 墓碑製造器


一年一度的萬聖節又要到了
最近剛好在學習openSCAD這套3D建模軟體
就弄了應景的玩意給社群玩玩

登登登登登~登登~~(小叮噹拿道具音效)
墓~碑~製~造~器~~~

先看看成品吧

dome
square
cross


雖說是墳墓製造器,但因為加上了客製化功能
可以接受dxf檔案
已經可以說是2D圖形立架產生器了
以下幾張圖都是由客製化檔案產生的





安裝好openSCAD後,開啟tombstone_maker.scad這個檔案
會看到如下圖
左側是編輯頁
右上為3D圖展示區
右下是輸出

所有的設定值我都放在config.scad裡面
內容如下

(gist竟然沒有scad的語法高亮...)
沒關係,讓我來一條一條解釋設定值的作用

這三條是整體設定值,分別是高度、寬度與厚度
tombstone_height = 200;
tombstone_width = 150;
tombstone_thickness = 20;

寬度改大一點還有棺材的效果


這個設定值是本體的形狀,共有4個值可以用
分別是"dome"、"square"、"cross" (這三個效果可以參考文章最上面的圖片)
與 "customized" (這個設定值會自動載入customized.dxf的圖形,客製化方式這裡)
tompstone_shape = "dome";

這兩個設定值當上面設定為"customized"時才有作用
為圖案偏移值
stone_offsetX = 0;
stone_offsetY = 30;

這些值為墓碑上的圖案,預設為十字架(cross.dxf)
可以自己更換,製作方法與上面customized相同,後面說明
mark_style有raised與sunken兩種方式
raised樣式
mark_file = "dxf/cross.dxf";
mark_style = "sunken";
mark_sizeX = 30;
mark_sizeY = 50;
mark_offsetX = 0;
mark_offsetY = -25;

接下來幾項都是碑文設定值
碑文內容
inscription_word = [
                        [
                            "Blesscat",
                        ]
                   ];

格式必須為陣列包一或多組陣列,每組陣列中可包含一或多組字串
以下幾個範例供參考
單一陣列


多組陣列
(需要特別注意最後一個陣列和字串後面不要逗點,會造成openSCAD的語法錯誤)



疑?字怎麼黏在一起了?
這就跟下面設定值有關係了,分別是XY偏移值
碑文的深度、大小、與間距
inscription_offsetX = 0;
inscription_offsetY = 10;
inscription_depth = 2.5;
inscription_size = 10;
inscription_gap = 2;
這些值可以為單一數字或是陣列, 需要注意如果設定為陣列時要與數量相同 舉例如下
陣列大小都為3個,分別對應,成果如下

終於到最後兩個參數了...
分別是字型與對齊方式,必須要為陣列,可以是單一或是與上面參數陣列大小相同
inscription_font = ["標楷體"];
inscription_halign = ["center"];
字型列表可以參考openSACD的help → Font List

都設定完畢後在openSCAD 按下F6算圖
之後在File → Export 成列印檔案即可
最後,附上成品圖

以上,有任何問題請留言,我看到會盡快回答的

1 則留言: