STL を PLY に変換

ここで STL を PLY に変換できます。無料、アカウント不要です。ファイルを上の枠に落とせば、数秒で結果がダウンロードできる状態になります。 変換はお使いのブラウザーの中で行われるので、ファイルはアップロードされません。Windows でも macOS でも Linux でも、iPhone でも Android でも同じように動き、通信を切っても動き続けます。

  • 処理される場所 ブラウザーの中です。ファイルがアップロードされることはありません。
  • 作り直し PLYはSTLとは仕組みが違います。非可逆コーデックのような段階的な劣化ではありません。PLYが表現できるものは忠実に再現され、対応するものがないものはまったく残りません。
  • ファイルサイズの上限 1ファイルあたり100MBまで。無料、アカウント不要です。
  • 知っておきたいこと 形状だけです。材質・色・テクスチャ・アニメーションは引き継がれず、同じモデルを複数回配置していた場合は、それぞれの位置に焼き付けられた別々のコピーとして返ってきます。

一度に100ファイルまで。フォーマットが混ざっていても構いません。

この組はほぼ何も失わない変換です

3D の変換の多くは何かを手放します。STL から PLY では面法線が失われますが、それは巻き順から計算できる情報で、いい加減な書き出しソフトが作った STL では実際にずれていることも多く、いくつかのスライサーはそもそも保存された値を無視します。

他のすべてはもともと存在しないので失われません。STL は三角形の一覧だけを持ち、色も単位も名前も部品もありません。PLY が x、y、z と面の一覧で持つものと完全に一致します。

測定ツールが STL ではなく PLY を求める理由

CloudCompare、MeshLab、Open3D、trimesh はどれも PLY を主要な入力形式として扱います。Stanford がこの用途のために 1994 年に設計した、研究ツールが必要とする頂点や面ごとの属性を自由に記述できるヘッダーだからです。

これらのツールは STL も読みますが、そこから問題が始まります。STL は開いて表示され、正しく見えるのに、位相的には使い物にならないことがあります。変換の目的はファイルを開けるようにすることではなく、アルゴリズムが信頼できる接続関係を持つメッシュを得ることです。

溶接がメッシュを測定可能にする

STL は三角形ごとに独立した 3 つの頂点を保存します。立方体は 8 つの位置のために 36 個の頂点レコードを持ちます。これをメッシュツールに読み込んで面が閉じているか尋ねると、どの三角形も頂点を共有していないため、穴のない形なのにすべての辺が境界辺だと答えます。

この変換は座標を小数点以下 6 桁に丸め、それを鍵として同じ位置にある頂点を 1 つの共有頂点にまとめます。これにより閉じているかの判定、法線の推定、曲率、簡略化、平滑化、穴埋めがすべて本物の隣接関係の上で動くようになります。

STL から生成された PLY の中身

ヘッダーは控えめな構成です。ply、format ascii 1.0、書き出し元を記したコメント、x・y・z の 3 つの float プロパティを持つ頂点要素、vertex_indices を持つ面要素、そして end_header。以降は頂点 1 行、三角形 1 行が続きます。

法線も色も信頼度も宣言されません。約束できないプロパティを含むヘッダーは短いヘッダーより悪いという判断です。

面法線が失われても問題ない理由

バイナリ STL の各三角形レコードの先頭 12 バイトは面法線です。この 12 バイトは読み飛ばされます。その情報は 3 頂点の並び順から完全に決まるので、計算し直せば近似ではなく正確な値になります。

保存された STL の法線は巻き順と食い違っていることが珍しくなく、複数のスライサーやメッシュツールがそれを方針として無視しています。巻き順から計算し直せば一貫した答えが 1 つ得られます。

ASCII の PLY が大きなモデルで払う代償

座標はすべて十進数のテキストとして書かれ、バイナリで 12 バイトだった頂点が 20 から 60 文字になります。一方で溶接によって頂点レコードのおよそ 6 分の 5 はすでに取り除かれています。

200 万三角形のスキャンメッシュは STL の段階で 100 MB になるので、変換前に簡略化しておく価値があります。PLY が扱いにくければ、MeshLab で binary_little_endian として書き出し直すだけで解決します。

変換した PLY を基準面として使う

最もよくある使い方は誤差解析です。STL から印刷または加工した部品をスキャンし、その差を求めます。CloudCompare のクラウド対メッシュ距離計算は、基準として面を持つメッシュを求めていて、それがこの変換の出力です。

2 つのデータセットの位置合わせと、両者が同じ縮尺を共有しているかの確認が必要です。どちらの形式も単位を宣言しないので、既知の寸法で確かめてから距離マップを信用してください。

測定作業を送信なしで行う

すべてブラウザーの中で完結し、送信は一切ありません。基準ジオメトリが誰かの未発表の部品であるとき、これは意味を持ちます。プリントブローカーやスライサーが宛先なら STL か 3MF のまま渡し、ブラウザービューアーが宛先なら glTF のほうが正しい選択です。

この変換が値打ちを持つのは、次の工程が距離計算、簡略化、リメッシュ、穴埋め、体積や表面積の算出、スキャンデータとの位置合わせといったアルゴリズムである場合です。

STL を PLY に変換する手順

  1. お手元の STL ファイル をこのページに落とすか、押してファイルを選んでください。
  2. 変換先に PLY を選びます。変換はブラウザーの中で行われ、ファイルはアップロードされません。
  3. できあがった PLY ファイル をダウンロードします。

STL と PLY——何が変わるか

STLとPLYの比較
STLPLY
正式名称StereolithographyPolygon File Format
拡張子.stl.ply
メディアタイプmodel/stlmodel/ply
最初の公開19871994
発行元3D SystemsStanford University
ライセンスオープン標準オープン標準
現在の位置づけ現行現行
ブラウザで開けるか対応なし対応なし
代わりに検討される形式3MF, OBJOBJ

結果を開く

Blenderは STL と PLY のどちらも読めるので、別のプログラムを開かずに、結果を元のファイルと並べて確かめられます。

どちらの形式が何のためのものか

2 つは狙っている用途が違います。STL は3D プリント、PLY はスキャンとプログラム間のデータ受け渡しです。ここは考える価値があります。一方が存在する理由が、そのままもう一方が使いにくい理由になっていることが多いからです。

PLY は Stanford University の形式で、1994 年から使われています。MeshLab、Blender、CloudCompareがこの形式を読めます。

STL から PLY:よくある質問

STL ファイル はどこかにアップロードされますか。

いいえ。この変換は完全にブラウザーの中で行われるので、ファイルが端末から出ることはありません。ご自分で確かめられます。開発者ツールのネットワークタブを開いて、何か変換してみてください。ページそのものと、このサービスの費用をまかなっている分析・広告のリクエストは見えますが、あなたのファイルを運んでいるリクエストはひとつもありません。

STL から PLY への変換は無料ですか。

はい。アカウントも透かしもなく、消費される 1 日の割り当てもありません。お使いの機械の上で動くので、何度でも戻ってきていただけます。ブラウザーが扱えるのは 100 MB までのファイルで、一度に 100 本です。

STL を PLY に変換すると品質は落ちますか。

STL と PLY は、内容の表し方が根本から違います。ですからこの変換は複製ではなく再構築です。誠実ではありますが、1 バイトも同じというわけではありません。 形状だけです。材質・色・テクスチャ・アニメーションは引き継がれず、同じモデルを複数回配置していた場合は、それぞれの位置に焼き付けられた別々のコピーとして返ってきます。

できあがった PLY ファイル を開くのに、何かインストールが必要ですか。

変換には要りません。すでに開いているブラウザーの中で行われます。そのあと結果を開くには、お使いの端末がふだん Polygon File Format を表示するのに使っているソフトが必要です。

これらのフォーマットについて