ポリゴン用各種イテレータと関数セット

MItMeshPolygon

MItMeshPolygon はポリゴン フェース イテレータです。あるメッシュ オブジェクトに対してこのクラスを初期化すると、フェース ID の順序でメッシュ内のすべてのフェースを反復処理できます。メッシュを参照する DAG パス、および特定のコンポーネントへの MObject リファレンスの両方に対してこのクラスを初期化すると、イテレータをエッジや頂点など特定のコンポーネントに隣接するフェースに制限することもできます。

このイテレータは、より迅速にメッシュを調べられるので、メッシュのパーシング処理に便利です。エッジと頂点よりフェースの方が数が少なく、データ取得で重複が少ないからです。フェース イテレータとしての MItMeshPolygon には、主に以下から構成される、フェース固有のデータを取得するメソッドがあります。

  • フェース構成(2 本を超える複数のエッジ)
  • フェース – 頂点データ
  • フェース – エッジ データ
  • 隣接コンポーネント データ
  • UV データ
  • 頂点カラー データ
  • ブラインド データやスムージング情報など、その他のデータ

MItMeshPolygon は、フェースごとにメッシュを迅速に検索する、またはフェース固有のデータをメッシュから要求する場合に理想的です。

MItMeshEdge

MItMeshEdge は、エッジごとにメッシュを反復処理し、エッジ固有のデータを取得します。このエッジ イテレータは、エッジ ID の順序でエッジを反復処理するか、渡されたコンポーネントに隣接するエッジを反復処理します。MltMeshEdge では、以下のタイプのデータを取得できます。

  • エッジ構成(2 つの頂点)
  • エッジ – フェース データ
  • エッジ – 頂点データ
  • エッジのスムージング
  • 隣接コンポーネント データ

MItMeshEdge は、メッシュをエッジごとに調べ、エッジ固有のデータを取得する場合に最適です。

MItMeshVertex

MItMeshVertex は、頂点 ID の順序で頂点ごとにメッシュを反復処理し、頂点固有のデータを取得します。この頂点イテレータは、2 つのケースに最適で、以下のような頂点固有データを取得できます。

  • 頂点構成(3D 位置)
  • 頂点 – フェース データ
  • 頂点 – エッジ データ
  • 頂点法線
  • UV データ(頂点に固有)
  • カラー データ(頂点に固有)
  • 隣接コンポーネント データ

MItMeshFaceVertex

MItMeshFaceVertex イテレータは、フェース ID の順序でフェース頂点ごとにメッシュを調べ、フェース頂点固有のデータを取得します。このフェース頂点イテレータでは、以下のようなデータを取得できます。

  • 法線データ
  • UV データ
  • カラー データ

MFnMesh

MFnMesh には、メッシュ固有データを取得してメッシュを修正するメソッドが複数含まれています。イテレータを使用して特定のコンポーネントを検索し、MFnMesh を使用してそのコンポーネント上で操作を実行します。

MFnMesh が提供するメソッドと MItMesh* イテレータは重複する部分がありますが、MFnMesh はメッシュ操作のグローバル ライブラリを表し、イテレータは各コンポーネントまわりを中心としたものです。

ついでに、ポリゴンオンリーではないけど。

MItSelectionList

MltSelectionList は、選択されたオブジェクトを含むラッパ クラスです。これは、グローバルなアクティブ セレクション リストのコピー、または自分で構築したリストを使用することができます。

MItSelectionList を使用してセレクション リストにあるオブジェクトをフィルタ処理すると、ある特定のタイプのオブジェクトを表示できます(MSelectionList では、選択したオブジェクトをフィルタ処理することはできません)。

MItGeometry

以上のことは全てオンラインヘルプに載っている。


スポンサーリンク