メッシュGraftinghammer

注: この機能は開発中です。開発中の機能を有効または無効にするコマンドは次のとおりです:

Set Developer Commands {On|OFF}

Graftingは、メッシュ済みサーフェスと形状の異なる未メッシュサーフェスをMergeするために使用します。この処理では、メッシュ済みサーフェス上のノード位置を未メッシュサーフェスの境界曲線に合うよう調整し、最終的なメッシュ品質を改善するために元のメッシュ接続性を変更する場合があります。これにより、未メッシュのボリュームをメッシュ済みボリュームへ接続、すなわちGraftできます。Graftingは、スイープ方向が交差するモデルで特に有効です(下記の例を参照)。

Graftingのコマンド構文は次のとおりです:

Graft {Surface <range> | Volume <id>} onto Volume <id> [no_refine] [no_smooth]

Graftコマンドは、2番目のボリュームがメッシング済みであることを確認します。次に、そのボリューム上で、指定した他方のボリュームまたはサーフェス範囲と重なるサーフェスを検索します。重なるサーフェスが見つかると2番目のボリュームのメッシュを調整し、必要なImprintを行った後、重なったサーフェスをMergeします。

Graftingオプション

[no_refine]: このオプションを指定すると、Graftingで元のメッシュ接続性を変更しません。メッシュはBranch Surfaceの境界に合うよう調整されますが、新しい要素は追加されません。

[no_smooth]: このオプションを指定すると、変更後のサーフェスまたはボリュームメッシュに対する最終スムージングを行いません。

Graftingの適用範囲

現在のGraftingの適用範囲と制限事項は次のとおりです:

  • GraftingはHex要素でメッシングされたボリュームに対してのみ使用できます。
  • 未メッシュのBranch Surfaceは、メッシュ済みTrunk Surfaceの境界外に点を持つことはできません。
  • Branch Surfaceがメッシュ済みサーフェスの要素サイズに対して非常に薄い場合や、鋭い角度を持つ場合はGraftingが難しくなることがあります。
  • Graftingに失敗すると、元のメッシュの一部ノードが移動している場合があります。メッシュ品質を確認し、必要に応じて再度スムージングしてください。

Graftingの例

この例では、Graftingの基本的な4ステップを示します:

  1. ジオメトリをPartitionします(任意)。
  2. Trunk Volumeをメッシングします。
  3. Branch VolumeをTrunk VolumeへGraftします。
  4. Branch Volumeをメッシングします。

ステップ1:ジオメトリをPartition

図1はメッシング対象モデルを示します。図中の矢印は交差する2つのスイープ方向を示しています。図2はGrafting用に分解したモデルです。

図1:2つの交差するスイープ方向を持つモデル

図2:Grafting用に分解したモデル

ステップ2:Trunk Volumeをメッシング

図3はTrunk Volumeのメッシュを示します。この時点では、Branch Surfaceに隣接するTrunk Surface上のメッシュは構造化メッシュですが、Branch Surfaceの境界とは一致していません。Trunk SurfaceとBranch Surfaceは別々のサーフェスです。

図3:メッシング済みTrunk Volume

ステップ3:BranchをTrunkへGraft

図4は、Branch Surfaceに合うよう修正されたTrunk Surfaceを示します。この時点で2つのサーフェスはMergeされています。

図4:Grafting後のTrunk Surface

ステップ4:Branch Volumeをメッシング

最終メッシュを図5に示します。

図5:最終メッシュ