STLファイルとは|中身・単位・データサイズの基本
日本語JA
ホーム › STLとは

STLファイルとは

STLファイルとは、立体の表面を小さな平らな三角形に分けて記録する形式です。3Dプリンター用のデータとして最も広く使われています。

Drop STL, OBJ, 3MF, STEP or G-code here

or click to browse

Also GLB / glTF, PLY, IGES, OFF, 3DS, FBX, DAE, WRL, AMF · several files at once (OBJ + MTL, glTF + BIN)

🔒 Files are opened by your browser and never leave your device

STLとは:1987年に生まれた三角形の形式

STLは、3D Systems社が1987年に光造形(stereolithography)の装置のために作った形式です。名前もこの光造形に由来します。

考え方は当時から変わっていません。曲面も平面も、すべて三角形の面で近似します。円柱は細長い三角形の帯になり、細かく分けるほど丸く見えます。その分、データは重くなります。

STLデータの中身:バイナリとASCII

バイナリ形式の構造は単純です。

  1. 先頭に80バイトのヘッダー。文字は自由で、読み込む側は読み飛ばします。
  2. 次に三角形の数を表す4バイトの整数。
  3. そのあと三角形1つにつき50バイト。法線と3つの頂点で32ビット浮動小数点数が12個(48バイト)、残りの2バイトは規格上使われません。

ASCII形式はテキストで、solid の行で始まり、三角形ごとに7行を書きます。facet normal、outer loop、vertex が3行、endloop、endfacet の順で、最後は endsolid です。

バイナリかASCIIかを見分ける・容量を計算する

テキストエディタで開いて、先頭に solid と読める文字が続き、vertex の行が並んでいればASCIIです。読めない記号ばかりならバイナリです。

バイナリの容量は 84 + 50 × 三角形の数(バイト)で決まります。1万個の三角形なら500,084バイト、約0.5 MBです。当サイトのテスト用の9,024三角形の球は451,284バイトでした。

ASCIIは数値の桁数で大きさが変わります。実測では三角形1つあたり約280〜300バイトで、バイナリの約5.6〜6倍でした。整数だけで書いた20 mmの立方体なら108バイトで済みます。

拡張子 .stl のファイルに単位はありません

STLに書かれているのは座標の数値だけです。「1」がmmなのかインチなのかは、ファイルのどこにも記録されません。多くのスライサーはmmとして読むため、インチで設計した部品は25.4分の1の大きさで現れます。

当サイトの STLビューワー も数値をmmとして表示します。部品が小さすぎるときは、画面の Edit から Inches → mm を押すと25.4倍になります。数値はリトルエンディアンの32ビット浮動小数点数なので、有効桁数はおよそ7桁です。

STLのままでよいとき、3MFやSTEPにするとき

次の作業向く形式理由
スライサーで造形するSTL または 3MF3MFはZIPのパッケージで、単位(既定はmm)と色を記録できます
CADに渡すSTEPISO 10303 の形式で、単位を宣言し、正確な曲面(B-rep)を扱えます
描画や別の3Dソフトで使うOBJテキスト形式で、材料は別ファイル .mtl に入ります。単位はありません

STLからSTEPを作るなら STL STEP 変換 を使います。三角形がそのまま平らな面になるので、曲面のSTEPにはなりません。拡張子 .stp と .step の違いは STP拡張子の解説 にまとめています。

受け取ったSTLデータで確かめること

スライサーはモデルを層ごとに切り、どこが内側かを判断します。この判断は、表面がすき間なく閉じているときにしか正しく働きません。どのエッジも2つの三角形が共有し、法線がすべて外を向いている状態です。

このページの下のビューワーにファイルをドロップすると、Info に寸法、三角形の数、穴、開いたエッジ、非多様体エッジ、裏返った三角形が出ます。ツールの画面は英語で、単位の切り替えは Units です。ファイルはお使いのパソコンの中で読み込まれ、サーバーには送られません。CADから届いた部品なら STEP viewer で開いてください。

よくある質問

STLデータとは何ですか。

立体の表面を三角形の集まりとして記録した3Dデータです。CADなどで作った形を3Dプリンターに渡すときに使われます。

STLファイルはどのソフトで開けますか。

スライサーや多くのCADで開けます。インストールせずに見るなら、このサイトのビューワーにドロップするだけで表示されます。

テキストエディタで開くと読めない文字が並ぶのはなぜですか。

バイナリ形式のSTLだからです。三角形の座標が32ビットの数値として書かれているため、文字としては読めません。

STLデータの形は後から直せますか。

拡大縮小、回転、カット、穴の修復などはできます。ビューワーで開いて Edit を押してください。穴の直径のような設計上の寸法は、元のCADで直します。

STLとSTEPは何が違いますか。

STLは表面を三角形で近似し、単位を持ちません。STEPは穴や曲面を数式のまま正確に記録し、単位も宣言します。