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

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

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

関連記事

『ハン・ソロ/スター・ウォーズ・ストーリー』のVFXブレイクダウン まとめ

ZBrushで手首のモデリングをリファイン

Russian3DScannerのトポロジー転送ツール『WrapX』

ZBrush 2021.6のMesh from Mask機能を使ってみる

オープンソースのテクスチャマッピングシステム『Ptex』

Unreal Engineの薄い本

定数

昔Mayaでモデリングしたモデルをリファインしてみようか

PythonでMayaのShapeノードプラグインを作る

布地のシワの法則性

頭蓋骨からの顔復元と進化過程の可視化

OpenCV 3.1とopencv_contribモジュールをVisual Studio 2015で...

Shader.jp:リアルタイム3DCG技術をあつかうサイト

Transformers ”Reference & Bulid” Siggraph 2007

Human Generator:Blenderの人体生成アドオン

bpy-renderer:レンダリング用Pythonパッケージ

clearcoat Shader

Maya LTのQuick Rigを試す

ZBrush 2018へのアップグレード

ZBrushで人型クリーチャー

ZBrushで仮面ライダー3号を造る ベース編

ラクガキの立体化 3Dプリント注文

MeshLab:3Dオブジェクトの確認・変換に便利なフリーウェア

ZBrushのZScript入門

OpenCV 3.1のsfmモジュールを試す

geometry3Sharp:Unity C#で使えるポリゴン操作ライブラリ

『スター・ウォーズ 最後のジェダイ』のVFXブレイクダウン まとめ

ZBrushでアヴァン・ガメラを作ってみる 首回りの修正・脚の作り込み

Geogram:C++の3D幾何アルゴリズムライブラリ

OpenCVのバージョン3が正式リリースされたぞ

ZBrushのZmodelerとDynamic Subdivisionを学ぶ

粘土をこねるようなスカルプトモデリング

ヘッドマウントディスプレイとビジュアリゼーションの未来

ZBrushCore

OpenCV3.3.0でsfmモジュールのビルドに成功!

サンプルコードにも間違いはある?

ZBrush用トポロジー転送プラグイン『ZWrap Plugin for ZBrush』

ZBrushで基本となるブラシ

ZBrushでゴジラ2001を作ってみる 身体のバランスを探る

中学3年生が制作した短編映像作品『2045』

BlenderProc:Blenderで機械学習用の画像データを生成するPythonツール

ジュラシック・パークのメイキング

コメント