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

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

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

関連記事

PyTorch3D:3Dコンピュータービジョンライブラリ

DensePose:画像中の人物表面のUV座標を推定する

ZBrushでアヴァン・ガメラを作ってみる 歯を配置

ポリ男をリファイン

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

WordPressプラグインの作り方

Physically Based Rendering

mentalrayのSubsurface Scattering Shader『misss_fast_...

Multi-View Environment:複数画像から3次元形状を再構築するライブラリ

ZBrush 4R8 リリース!

OpenCVのfindEssentialMat関数を使ったサンプルを読んでみる

Mayaのポリゴン分割ツールの進化

UnityでShaderの入力パラメータとして行列を渡す

ZBrushでアヴァン・ガメラを作ってみる 爪とトゲを追加

オープンソースの物理ベースGIレンダラ『appleseed』

映画『ゴジラ-1.0』 メイキング情報まとめ

Blender 2.81でIntel Open Image Denoiseを使う

色んな三面図があるサイト

OpenGVの用語

『スター・ウォーズ/スカイウォーカーの夜明け』のVFXブレイクダウン

UnityでPoint Cloudを表示する方法

池袋パルコで3Dのバーチャルフィッティング『ウェアラブル クロージング バイ アーバンリサーチ』

Windows Server 2008にAutodesk Maya 2009をインストール

デザインのリファイン再び

Unreal Engine 5の情報が公開された!

ZBrushでアヴァン・ガメラを作ってみる 下アゴと頭部を作り込む

フルCGのウルトラマン!?

今年もSSII

オープンソースの人体モデリングツール『MakeHuman』のAPI開発プロジェクトがスタート

Polyscope:3Dデータ操作用GUIライブラリ

ZBrushCore

Adobe Photoshop CS4 Extendedの3Dモデル編集機能

SIGGRAPH Asia

Kaolin:3Dディープラーニング用のPyTorchライブラリ

Digital Emily Project:人間の顔をそっくりそのままCGで復元する

adskShaderSDK

物理ベースレンダリングのためのマテリアル設定チートシート

リメイク版ロボコップスーツのメイキング

Mayaでリアルな布の質感を作るチュートリアル

Mayaのプラグイン開発

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

法線マップを用意してCanvas上でShadingするサンプル

コメント