ガイド

STLとは:OBJをSTLに変換したあとの形

更新 · メッシュ OBJ から STL だけ

STLの三角形、単位のないスケール、バイナリ、スライサーの手順を理解する。そのあとブラウザで非公開にOBJからSTLを得る。

STLは、スライサーが期待する三角形のファイルです。名前は初期のレジン工程にちなんで光造形(stereolithography)と広げられることが多いですが、形式はその一台の機械より長生きしました。今日では、形をBambu Studio、UltiMaker Cura、PrusaSlicerに渡す、地味で信頼できる方法です。モデリング形式ではありません。マテリアルを覚えません。単位も覚えません。覚えるのは角です。

三角形だけで、三角形だけ

一つの記録は一つの面です。法線と三つの頂点です。残す四角はなく、nゴンもなく、カーブもありません。このサイトがOBJを読むとき、ポリゴンは先に三角形へ分かれ、それからその三角形が書き出されます。ツールページの三角形数はその数です。四角を一面として数えていたモデラーの「ポリゴン数」とは一致しません。六つの四角の立方体は十二の三角形です。それは正しいことで、複製の不具合ではありません。

法線は面の向きです。スライサーが気にするのは、正確な法線の数値より、殻が閉じていて向きが一貫しているかです。ツールが内側と外側を決めようとするとき、巻き順の一貫性はまだ大事です。この書き出しは角の順番から法線を計算します。足りない面は作りません。

こちらが書くSTLに、テクスチャ座標も色もありません。広い世界には目立たない拡張があります。この変換が作るものではなく、スライサーが尊重すると当てにするものでもありません。ファイルに合う頭の中のモデルは、フィラメント一色です。

わざと単位がない

人が実際に実装している仕様には、ミリメートルの旗がありません。FDMのコミュニティの慣習は、1単位が1ミリメートルです。頂点が25のファイルは、その慣習では25 mmの頂点です。作者が25メートルや25インチのつもりでもです。ミリメートルとメートル のガイドは、正しい慣習を数値に焼き込む話です。そのあとでもSTLは「知りません」。次のソフトが同じ慣習を共有しなければなりません。

変換の境界ボックスが、ファイルヘッダの一文より役立つ理由もそれです。バイナリのヘッダは80バイトで、空かツール名が入っていることが多いです。「これはインチだった」の唯一の控えをそこに置かないでください。自分のメモに置き、すでにミリメートルに合う座標に置いてください。

バイナリ、ASCII、スライサー

同じ三角形をバイナリに詰めることも、ASCIIのテキストで綴ることもできます。バイナリは小さく、初期のダウンロードです。ASCIIは読めて、かさばります。バイナリとASCII STL がその選択です。バイトが整っていれば、上に名前を出したスライサーのどちらでも開きます。改行や小数点を変えたテキストエディタで壊れたASCIIは、開かないことがあります。大きなSTLを手で直すより、書き出し直してください。

スライサーへの読み込みは最後の試験ではありません。報告された大きさを見ます。モデルが立っているかを見ます。意図しない隙間がないか、層のプレビューを見ます。STLは幾何として正しくても、悪い印刷になり得ます。薄い壁、重なったボディ、開いた底はそこで出ます。同じ壊れた表面を書き出し直せば治るという希望ではなく、メッシュへ問題を戻してください。

STLはどこから来るべきか

このサイトでは、STLはWavefrontのOBJメッシュから来るべきです。それが、OBJとは で書いた v と f の行を持つファイルです。PNG、JPG、STEPのソリッドから来るべきではありません。画像をボクセル化せず、CADの境界モデルもテッセレーションしません。設計ツールにソリッドしかないなら、そこで受け入れられる弦の公差でテッセレーションするかOBJを書き出し、それから変換してください。得られる三角形数は、そのツールに頼んだ分割です。こちらが滑らかにするために三角形を足すことはありません。

ファイルができたら、印刷の手順は普通です。ミリメートルを確認し、向きを決め、必要ならサポートし、スライスして印刷します。形をまた編集するならOBJを残してください。OBJとSTL は、一方が他方を置き換えるのではなく、二つのファイルが並ぶ理由を説明します。Blenderからの手順は OBJをSTLに変換する方法 です。

質問

STLはモデルがミリメートルだと知っていますか?

知りません。形式が保存するのは座標と面法線です。スライサーは通常ミリメートルだと仮定します。このサイトの単位メニューは、書く前に数値を変えます。

正しいSTLはいつも印刷できますか?

できません。正しい三角形の一覧でも、穴、交差する殻、薄すぎる壁があり得ます。変換はどれも修復しません。

バイナリですか、テキストですか?

どちらもSTLです。ここでの初期値はバイナリです。スライサーがそれを期待し、ファイルも小さいからです。ASCIIはテキストの形です。バイナリとASCIIのガイドを見てください。

OBJからSTLを得る