指南
二進位與 ASCII:OBJ 轉 STL 的格式
更新 · 僅網格 OBJ 到 STL
二進位 STL 更小,對大多數切片器更實用;ASCII 便於查看和比對差異。比較之後,再私下 OBJ 轉 STL。
STL 要麼是緊湊的二進位,要麼是冗長的文字。三角形可以相同。檔案不會相同。列印流程的下一個應用程式是切片器,而切片器是為緊湊形式做的,所以除非你勾選 ASCII,這個轉換寫的是二進位。
二進位存什麼
二進位 STL 以 80 位元組的檔頭開始,多數工具會忽略它,然後是三角形數量,然後每個三角形是一條法線和三個角點,用小端數字表示,再加上通常為零的 2 位元組屬性。沒有材質,沒有切片器會依賴的物件名,也沒有單位。單位規則和其他任何 STL 一樣:數字是我們縮放到的樣子,切片器會把它們叫做毫米。
二進位檔案隨三角形數量大致成直線增長。12 個三角形的立方體是幾百位元組。幾十萬三角形的雕刻,仍然比同樣的資料寫成文字小得多。這就是下載和切片器匯入感覺更快的原因,也是預設用二進位的原因,儘管 ASCII 在白板上更好講。
ASCII 存什麼
ASCII STL 是文字。你會看到 solid,然後是 facet normal,一個外環,三行 vertex,以及 endsolid。你可以在編輯器裡打開並讀座標。追縮放錯誤時這確實有用:搜一個頂點,看你以為在 40 的角是不是停在 0.04 或 40000。用它來傳遞密的網格則很差。檔案大,寫得慢,如果程式用會把小數點換成逗號的地區設定重寫文字,也容易損壞。
ASCII 不會保留 MTL 資料,也不會讓網格變成流形。它不是 OBJ 那種「來源」格式。想當網格編輯的東西,留著 OBJ。想當文字瞥一眼,ASCII STL 夠看幾片面,用來裝整個角色就很痛苦。
下載哪一種
給 Bambu Studio、UltiMaker Cura 和 PrusaSlicer 用二進位。教學工具、差異比對或你自己的眼睛需要文字時,或者你在追單位錯誤、要確認一個座標時,用 ASCII。同一個 OBJ 可以轉換兩次。三角形數量應該一致。如果單位、縮放、軸和熱床選項一致,包圍盒也應該一致。如果那些設定不同,檔案不同是因為幾何不同,不是因為其中一個是二進位。
二進位檔案的檔頭不是存放你所選單位的可靠地方。不要依賴它。要緊的檢查是轉換上的包圍盒,以及切片器報告的尺寸。毫米與公尺 是講縮放的文章。什麼是 STL 是這次比較底下的格式入門。
打包方式不改變隱私。二進位和 ASCII 都在 Worker 裡產生,並儲存為本機的 Blob。不會為了做出另一種而上傳另一種。如果檔案打不開,檢查你是不是把 ASCII 檔改了名,卻指望二進位解析器,或者相反。兩種的副檔名都是 .stl。拿不準時,再匯出一次二進位,讓切片器讀那份新檔。
問題
ASCII 會印得更準嗎?
不會。精度來自網格和單位縮放,不來自把數字拼成文字。ASCII 和二進位可以描述同樣的角點。二進位更小。
什麼時候打開 ASCII?
想在文字編輯器裡打開 STL、讀幾片面的時候,或者很老的工具拒絕二進位的時候。給 Bambu Studio、Cura 和 PrusaSlicer 時,保持二進位。
二進位會藏起壞網格嗎?
不會。洞和翻面都在三角形裡,兩種格式都一樣。二進位只是一種打包方式。