メッシュ品質の制御

メッシュ生成後のモデル品質が許容できない場合、品質を改善する方法は大きく2つあります。追加の smoothing を行うか、メッシュを削除して最初から作り直します。また、メッシュ生成前に実行することで品質改善に役立つコマンドもあります。ここではその一部を説明します。

スキュー制御

スキュー制御アルゴリズムでは、サーフェスをマッピングしやすいブロック状の四辺領域へ分割します。この分割統治処理の目的は、submap 領域に生じるメッシュのスキューを低減することです。サーフェス上のスキューを制御することで、その下のボリュームメッシュのスキューも低減できます。

スキュー制御には次のコマンドを使用します:

Control Skew Surface <surface_id_range> [Individual]

Delete Skew Control Surface {surface_list} [Propagate]

キーワード Individual は非推奨です。これは、指定リスト内の他のサーフェスを考慮せず各サーフェスを処理するための指定でしたが、現在は不要であり、最終メッシュに問題を生じさせる可能性があります。コマンドを入力すると、アルゴリズムは直ちにサーフェスを処理し、頂点を挿入して、分割後の曲線に interval 制約を設定します。これによりメッシュ生成時の拘束が増え、モデル上のスキューを低減できます。このアルゴリズムを利用できるのは構造メッシュ方式に適したサーフェスに限られますが、将来のリリースではこの制限が緩和される可能性があります。

スキュー制御アルゴリズムによる変更を削除することもできます。削除には delete skew control コマンドを使用します。

指定サーフェス上のスキュー制御変更を削除すると、そのサーフェス上の全曲線から変更が削除されます。曲線が別のスキュー制御済みサーフェスと共有されている場合も同様です。特定の1つ以上のサーフェスの影響を受けるすべてのサーフェスへ削除を伝播する場合は、キーワード propagate を使用します。

Curve Bias の伝播

曲線に bias mesh scheme を適用すると、接続するサーフェスメッシュにスキューが生じることがあります。このスキューを抑えるため、接続サーフェス上の曲線にも同じ bias を適用したい場合があります。そのためのコマンドは次のとおりです:

Propagate Curve Bias [Surface|Volume|Body|Group <id_list>]

このコマンドは入力リスト内の単純に map 可能なサーフェスを検索し、その中で bias scheme が設定されている曲線を特定して、map 可能なサーフェス全体へその bias を伝播します。

境界の調整

Adjust Boundary {Surface|Group} <id_range> [Angle <double>]

このコマンドは、map または submap によるサーフェスメッシュの要素品質改善に使用できます。頂点位置によっては、サーフェスの曲線メッシュが低品質なサーフェスメッシュにつながることがあります。このコマンドは、より高品質なサーフェスメッシュを生成できるよう曲線メッシュを調整します。境界からメッシュエッジが出る角度を調べ、理想的な map / submap メッシュのように境界と直交、すなわち90度になるよう節点位置を可能な範囲で移動します。許容偏差角のデフォルトは5度で、 [Angle <double>] オプションで変更できます。曲線メッシュを変更するため、まずサーフェスメッシュを削除し、曲線メッシュの位置調整・固定後に再メッシュします。このコマンドは、サーフェスに接続するボリュームがまだメッシュ生成されていないことを前提とします。すでにメッシュ生成済みの場合はエラーになります。また、interval 制約(サーフェスの interval 変更が必要な場合など)や、サーフェス形状が十分にブロック状でない場合には、必ずしも機能しないことがあります。