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