3Dデータ③ ~バッドエッジの防止にはCAD上でひと手間~
本記事の内容が当てはまる造形方式
- 全て
- バッドエッジとは?
3Dデータ②でSTLの持つエラーの一つとして紹介した、バッドエッジとは何でしょうか?端的に言うと、モデルを構成するポリゴン(微小な三角形)の辺のうち、「正しく接続すべき相手が定まらない辺」のことです。最も単純なバッドエッジは、面が欠けたモデルに空いた穴のフチです。隣につながるべきポリゴンが無いので、当然バッドエッジとなります。(図1左。この記事では黄色い線でバッドエッジを表示します。)また、隣にポリゴンがあるものの、辺と辺の距離が離れ過ぎている場合もバッドエッジとなります(図1右)。これらのバッドエッジは、そもそも変換前のCADモデルに穴が開いていたり面が離れていることを原因とするケースが多いです。このような「面抜け」「面剥がれ」と呼ばれる現象は、複数のCAD間で中間ファイルを介した変換を行った場合などにしばしば発生します。また、近接する辺同士を「つながっている」と判断する基準(最小トレランス)がCAD側とSTLを受け取る側で異なる設定となっていると、CAD上では「つながって」いた辺がSTLビューアーや3Dプリンターのドライバー側でバッドエッジと判定されることもあります。
図1:典型的なバッドエッジ
- やっかいなノンマニホールド系のバッドエッジ
この他に、「ノンマニホールド面」に由来するバッドエッジも存在します。ノンマニホールドとは、1つの辺に3つ以上の面が集まっているような、面のつながり方が不正で物体の外形が定義できない状態のことです。例えば下の図2では、左下の辺には「3」「6」「7」の3つの面が、右上には「1」「4」「7」の3つの面が集中しています。
図2:ノンマニホールド状態の模式図(半透明表示)
こんなモデル作るわけ無いじゃん!と言われそうですが、例えば図3の様に個別に作成した軸部品とドーナツ状の部品のアセンブル・モデルをまとめてSTL変換する場合などは、2つの部品が接する面にノンマニホールド状態が発生することがあります。2つのピッタリ重なった(あるいは非常に近い)面を残す・残さないという微妙な判別処理の結果です。ノンマニホールド系のバッドエッジは、細かく分かれて破片の様に散らばる上に、必要な面との境界付近に発生するので、STL上で修正するのはとても大変です。
図3:ノンマニホールド系のバッドエッジ(半透明表示)
- 複数パーツのブーリアンはCAD上で行うべし
ノンマニホールドという難しい単語が出てきましたが、対策は簡単です。バッドエッジを避けるためには、予めCAD上で軸部品とドーナツ部品をブーリアン結合(複数のパーツを一体化する処理)してしまえば良いのです。また、面抜けや面剥がれに由来するバッドエッジも、CAD上で穴を埋めたり辺をつなげる処理(パッチ・ソーイングなど)を事前に行うことで、STLを頑張って修正する手間を避けることが出来ます。3Dデータ①で述べたことの繰り返しですが、CADでできることは変換前にCADで!が基本です。