3D 三角形メッシュを修復するアルゴリズムが必要です。望ましい条件は、2n 個の三角形 (ほとんどの場合、2 個の三角形) がエッジを共有することです。対照的に、入力メッシュには、エッジに 2n+1 個の三角形 (1,3,..) を持つケースが含まれます。私はいくつかのヒューリスティックを実装しました:
近い頂点 (丸め誤差による) は 1 つにマージされます。
その後、新しい頂点が共鳴可能な他の頂点とマージできる場合、境界エッジは分割されます。
穴は、面積のしきい値まで三角測量されます。
これは多くの入力に対して非常にうまく機能します (後の段階で自己交差を気にします) が、これらのヒューリスティックが失敗するメッシュがあります。主な問題は、エッジの修復が局所的な結果だけを伴う決定ではないことです。作成された三角形ごとに、後続の修復ステップで使用できるエッジのセットが減少します。したがって、たった 1 つの間違った判断が一連の連続した障害につながる可能性があります。
この問題は表面再構成の問題に近いように見えますが、私はすでに表面の大部分を持っているので、既存の三角形を尊重する部分再構成アルゴリズムが必要です。何か案は?