陸續用 OpenSCAD 建模土砲過手機散熱座雨傘磁扣隨手關門立體標語磁力壁鉤撈魚杓柔光罩,但都是用方塊圓柱等幾何物件拼湊成形,頂多加上文字轉 Path 立體化。最近挑戰了一次自己都覺得神奇的不規則形狀零件復刻,特 PO 文紀念兼備忘。

買 3D 印表機後我最愛的用途是印零件修東西,名聲遠播到有天同事拿了壞掉的汽車抽屜問診 XD 損壞處為左側轉軸固定環(照片斷裂處已預做處理,移除殘根及磨平):

thumbnail

對照右側完好的樣子,可知原本應為「Ω」形狀的環,估計是用來扣住轉軸,左側左半邊環已斷裂。

thumbnail

考量若單印半邊弧形垂直黏上去,很難找到夠強大的膠靠這麼小的底面積對抗力距,不如印個平面配 L 型立牆可行性較高。延伸平面擴大黏著面積,才能產生足夠支撐力。只是,這個構想最大挑戰在於該環形並非標準圓而是「Ω」形狀,如何復刻到尺寸形狀相同對我來說是個難題。

總之,一時手癢接受委託,花了幾小時用做假牙的概念做出修補片,我還真讓殘缺的半環破鏡重圓。(如下圖)

thumbnail

同樣的零件全世界應找不到第二件同款車型連斷裂處都相同的案例,模型、程式分享無用,聊聊製作經驗就好。

修補片的 OpenSCAD 模型長這樣:

較麻煩部分要做尺寸相同的擬真「Ω」弧形,最直覺的做法是取得該形狀的 Path 路徑,用 linear_extrude() 2D 轉 3D 變成立體物件。Path 座標點要怎麼來呢?沒有人工智慧 3D 掃瞄設備,就用工人智慧手工描圖搞定吧!

拍下完好轉軸環的照片,匯入向量圖編輯軟體,InkScape,套上圖層,手工定位點出路徑。

我總共做出兩個圖,一個是「Ω」弧形用來產生立牆,另一個是有「Ω」弧形缺口的三角形,用來打造與立牆無縫嵌合的底板。

有個小問題,SVG Path XML 格式如下:

<path d="m 1.0026271,296.84892 -0.96271,-1.12076 0.58913,-0.51728 0.25863,...略"></path>

而在 OpenSCAD 裡需要的 Polygon 格式長這樣:

polygon(points=[[27.36,279.27],[0.66,279.27],[7.60,296.60],...略

我找到線上版 Path to Polygon Converter 可以將 SVG 轉成 Polygon,不過它轉出的格式與 OpenSCAD 需要的仍有段差距。

放心這種格式小問題哪可能難倒前端攻城獅?打開 Chrome F12 開發者工具,輸入以下 JavaScript 程式碼,可直接貼入 OpenSCAD 的程式碼 GET!

console.log("polygon(points=[" + 
	document.getElementById("svg-result").querySelector("polygon").getAttribute("points").split(' ')
	.filter((s)=>!!s).map(
		(s)=>{ 
			var p=s.split(','); 
			return "["+parseFloat(p[0]).toFixed(2)+","+parseFloat(p[1]).toFixed(2)+"]"; 
		}).join(",") + 
		"]);");

就醬,我的 3D 列印修補技能,又再推進一小步。(灑花)

3D 列印之不規則零件復刻


Comments

# by M T

如果可以加點導角跟肋片來做補強, 應該會更好.. 不然照這個列印方向, 很快就會再斷一次..

# by Jeffrey

to MT,感謝建議。有評估過,環形會順著轉軸旋轉並無承重需求,先賭力量不致於太到PLA撐不住,另一方面不知車子設計擔心卡到其他機構,先求體積愈小愈好。如果失敗且空間允許,下個版本我想將平面厚度拉到跟立牆一樣高。

Post a comment