如何修復(fù)3D打印用模型文件?
魔猴君 知識堂 3531天前
不知道您有沒有遇見過這樣的情況:好不容易設(shè)計好的3D文件,一加載到3D打印機(jī)機(jī)控軟件里就報錯?別著急,這回魔猴網(wǎng)要給大家介紹三個免費(fèi)好用的3D文件修復(fù)工具,它們能幫助我們快速修復(fù)有問題的3D模型。推薦大家先下載并安裝這兩個軟件,然后接著往下看。
魔猴網(wǎng)
魔猴網(wǎng)的在線工具,能對3D模型進(jìn)行自動檢測,甚至自動修復(fù)。使用非常簡單,來到云打印頁面,上傳模型后,即可得到3D模型的檢測信息,如果需要對模型進(jìn)行修復(fù),可到3D工具>自動修復(fù),按照網(wǎng)頁提示,自動完成修復(fù),這個適合一些相對簡單的錯誤,并不能做到100%修復(fù),如果魔猴網(wǎng)的在線修復(fù)沒有解決,可以嘗試使用下面的幾個軟件;
Meshlab:
Meshlab可以打開和導(dǎo)出一些Netfabb不能處理的3D文件,并將它們轉(zhuǎn)換和導(dǎo)出成各種其他格式的3D文件,因此我們先來介紹它。
1. 導(dǎo)出合適格式的3D文件
在進(jìn)行單色3D打印時,我們推薦采用STL或者OBJ格式的3D文件,這兩種格式應(yīng)該是所有的3D打印機(jī),不論是桌面型還是工業(yè)型都能夠支持的。而DAE、X3D、X3DB、WRL等格式也有很多3D打印機(jī)可以支持。
而在進(jìn)行全彩砂巖3D打印的時候,則最好采用DAE、WRL、X3D、X3DB或者X3D格式的3D文件。
如果你的文件格式不在這幾個被3D打印機(jī)支持的格式列表里,請嘗試用meshlab打開你的3D文件,然后導(dǎo)出成以上格式之一。
注:Meshlab支持打開和導(dǎo)入的3D文件格式有: PLY, STL, OFF, OBJ, 3DS, COLLADA, PTX, V3D, PTS, APTS, XYZ, GTS, TRI, ASC, X3D, X3DV, VRML, ALN
2. 導(dǎo)出合適大小的3D文件
另外,魔猴3D打印云服務(wù)只接受小于64M,少于1,000,000個三角面的3D模型。如果您的3D文件過大,或者三角面數(shù)過多,請您使用Meshlab軟件的“polygon reduction”(面數(shù)減少)功能來降低面數(shù)和文件大小。當(dāng)然,您也不能減得過低,因為會影響模型質(zhì)量,同一模型不同面數(shù)的效果圖
如下:
(圖片源:shapeways)
在meshlab中減少面數(shù)的步驟是:
從菜單欄(menu)選擇Filters > Remeshing, simplification and construction > Quadratic Edge Collapse Detection。 你會看到下圖所示的選項框。如果你的模型是帶有材質(zhì)和顏色的,那么記得選Quadratic Edge Collapse Detection(with texture)來保持材質(zhì)和顏色在3D模型上對應(yīng)的位置。下面我來解釋一下這個選項框里的各項的含義。
Target number of faces(目標(biāo)面數(shù))---你想要最終將模型減少至____個面
Percentage reduction(減少百分比)---填寫介于0~1之間的數(shù)值
以上兩項二選一填寫即可。
Quality threshold(質(zhì)量閾值):Preserve Boundary of the mesh(保留網(wǎng)格邊界)輸入一個介于0~1的值;值越高,meshlab越努力保持住你的原始模型的外形,因此推薦保持默認(rèn)的最高值1
Preserve Normal (保留法線方向):建議勾選。勾選上之后meshlab就不會不小心弄反模型中有些面的發(fā)現(xiàn)方向了。
注意:如果你發(fā)現(xiàn)模型的法線確實有問題了,可以選擇Filter>Normals, Curvature and Orientation > Re-Orient all faces coherently來將模型的法線修復(fù)正常。(注意,只對流性(manifold)模型管用)。
Preserve Topology (保留拓?fù)浣Y(jié)構(gòu))在處理模型時盡量不改變模型的拓?fù)浣Y(jié)構(gòu)。
Optimal position of simplified vertices(保持簡化頂點處于最佳位置):建議勾選。
Planar simplification(平面簡化):建議勾選
Post-simplification cleaning (簡化后清理):建議勾選
Simplify only selected faces (只簡化選中的面):如果你想簡化整個模型,就不要選這一項了。
都選擇好了以后,點擊Apply(應(yīng)用),就可以了。
Meshlab還能用來查看全彩3D模型的材質(zhì)和顏色。當(dāng)你打開一個已經(jīng)有了UV材質(zhì)的3D模型文件時,meshlab應(yīng)該能夠自動加載文件材質(zhì)和顏色。
Netfabb
Netfabb是3D打印圈里使用最普遍的免費(fèi)STL文件編輯和修復(fù)軟件。因為它對接3D打印的功能比較全面。
1. 能夠查看一個3D模型的真實物理大小。
很多3D軟件都不支持查看模型真實的物理大小,你在屏幕上覺得有書桌大小的模型很可能打印出來只有手指大,所以建議大家在3D打印前一定要仔細(xì)檢查好模型的真實大小。
2. 能夠檢查出一個STL文件中是否存在3D打印缺陷。
在一個數(shù)字化的3D模型中往往存在3個元素,點(vertices),線(edges)和面(faces)。而為了3D打印,這些點線面必須組成流型(manifold)的幾何構(gòu)型。一個3D文件是流型的,說明它的每一條線都之和2個面相連接。而當(dāng)非流型的幾何構(gòu)型出現(xiàn)在3D模型中,3D打印機(jī)在讀入這個模型的時候就會出錯。關(guān)于非流型和非水密的問題,請閱讀如何做3D打印設(shè)計。
3. 能夠自動修復(fù)有問題的3D模型
步驟:選中模型,點擊屏幕右上角的紅色加號,點擊automatic repair, 點擊default repair,點擊yes,右鍵點擊修復(fù)的模型,選擇export part,選擇 as STL.
經(jīng)netfabb修復(fù)后,通常會解決以下問題。
零孔洞:模型將會呈現(xiàn)流型(manifold),面和線之間不再有縫隙孔洞
零界線:界線指的是處于孔洞一邊的線,它只連接到1個面上
零反向法線:Netfabb能夠識別法線向里的面,將它顯示成紅色。修復(fù)后紅色面將消失,變成代表正確法線方向的綠色。
準(zhǔn)確的體積:如果3D模型有的面法線反了,導(dǎo)致表示內(nèi)面的紅色面朝向了外面,那么在計算體積的時候,打印機(jī)會認(rèn)為這個面以外的所有東西都是模型內(nèi)部,會出錯。
閉合的表面:水密的3D模型,支持3D打印。
注意:盡管Netfabb的修復(fù)工具大多數(shù)時候很好用,但是它也還是有可能會出錯的。所以你在提交3D打印文件之前請仔細(xì)做好檢查,最重要的是檢查用netfabb修復(fù)過的文件是否誤將不該封住的口封住了,不該刪除的幾何結(jié)構(gòu)刪除了。