STLファイルが多様体になっていないときの対処法[Blender]

tayoutai-error-sam

 3Dプリンターで印刷しようとスライサーソフトにSTLファイルを読み込んだ際、「多様体ではありません(Non-Manifold)」というエラーが出て困っていませんか?

 このエラーを放置すると、印刷時にモデルに穴が空いたり、スライスデータが正常に生成されなかったりする原因になります。

 この記事では、初心者の方でも簡単にできるBambu Studio(BambuLab)での簡易修正と、Blenderを使った本格的な修正方法をステップ形式で解説します。

そもそも「多様体ではない(非多様体)」とは?

 3Dプリントにおける「多様体(Manifold)」とは、簡単に言うと「中身が詰まった、水漏れしないバケツのような状態」を指します。

逆に「多様体ではない(非多様体)」とは、以下のような状態です。

・面に穴が空いている

・面に厚みがない

・1つの辺を3つ以上の面が共有している

・内部に不要な面が残っている

スライサーはこれらを「どこが外側でどこが内側か」を判断できないため、エラーが発生します。

直す方法

これらを直すには、BambuLabとBlenderの2つを使用します。

①BambuLabで直す方法

②Blenderで直す方法

①BambuLabで直す方法

 

軽微なエラーであれば、スライサーソフト側で自動修復が可能です。

  1. オブジェクトを選択:エラーが出ているモデルをクリックして選択します。

  2. 修正ボタンを実行:Windows版の場合、モデルを右クリックして「修正」を選択するか、画面に表示される通知の「修復」リンクをクリックします。

  3. 確認:エラー表示が消えれば完了です。

※これでも直らない複雑なエラーの場合は、次のBlenderを使った手順に進みましょう。

②Blenderで直す方法

 

手順A:重複した頂点を結合する(距離でマージ)

まずは、重なっているだけの頂点を一つにまとめます。これだけで解決することも多いです。

  1. Blenderでオブジェクトを選択し、[Tab]キーで「編集モード」に入ります。

  2. [A]キーで全頂点を選択します。

  3. [M]キーを押し、「距離でマージ(By Distance)」を選択します。

  4. 画面下のメニューで数値を微調整し、モデルが崩れない範囲で不要な頂点を削除します。

  5. STL形式で再度書き出し、スライサーで確認します。

ここからは、下の記事で紹介した[3D print toolbox]を使用しますので、事前にインストールしておいてください。

手順B:アドオン「3D Print Toolbox」で自動修復する

上記で直らない場合は、Blender標準搭載のアドオンを使います。(※事前に設定の「アドオン」から「Mesh: 3D-Print Toolbox」を有効にしてください)

  1. [N]キーを押してサイドバーを開き、「3D Print」タブを選択します。

  2. 「Check All」をクリックして、エラー箇所を特定します。

  3. 「Clean Up」項目内にある「Make Manifold」をクリックします。
     これにより、Blenderが自動で穴を塞ぎ、重なりを解消します。

  4. STLで書き出し:修正後、再度エクスポートして完了です。

最後に

Blenderは自由な造形が得意な反面、CADソフトとは異なり、そのままでは3Dプリントに適さない(非多様体な)データになりやすい傾向があります。

制作の途中で3D Print Toolboxを使ってこまめにチェックする癖をつけておくと、後からの修正が楽になります。

もし今回の方法でも直らないほど複雑なデータ(自己交差が激しいもの等)の場合は、無理に直すより、一度「ベベル」などのモディファイアを見直すか、ブーリアン演算の整理を行うことをおすすめします。

また、別の記事でお会いしましょう。ではまた。