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

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

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


スポンサーリンク

関連記事

clearcoat Shader
kotobankを使ってみた
UnityのGlobal Illumination
Unityの薄い本
OpenCV 3.3.0 contribのsfmモジュールのサンプルを動かしてみる
『スター・ウォーズ フォースの覚醒』のVFXブレイクダウン まとめ
『スター・ウォーズ 最後のジェダイ』のVFXブレイクダウン まとめ
1枚の画像からマテリアルを作成できる無料ツール『Materialize』
C++ 標準テンプレートライブラリ (STL)
『Follow Finder』 (Google Labs)
Unityの新しいGUI作成システム『uGUI』
トランスフォーマーロストエイジのメイキング
OpenCVで顔のランドマークを検出する『Facemark API』
OpenCVの三角測量関数『cv::triangulatepoints』
UnityでLight Shaftを表現する
Vancouver Film Schoolのデモリール
ZBrush 2018へのアップグレード
リアルタイム レイトレーシングAPI『DirectX Raytracing (DXR)』
ラクガキの立体化
フルCGのウルトラマン!?
ZBrushで仮面ライダー3号を造る 仮面編 PolyGroup作成に再挑戦
トランスフォーマー :リベンジのメイキング (デジタルドメイン)
OpenCV3.3.0でsfmモジュールのビルドに成功!
openMVGをWindows10 Visual Studio 2015環境でビルドする
3Dグラフィックスの入門書
OpenCVのための軽量GUIライブラリ『cvui』
マンガで分かる JavaScriptプログラミング講座
ZBrushトレーニング
Phongの表現力パネェ 材質別のPhong Shader用パラメータ一覧
甲虫の色とか
Boost オープンソースライブラリ
顔追跡による擬似3D表示『Dynamic Perspective』
SIGGRAPH ASIA 2009で学生ボランティア募集してるみたい
iPadをWindows PCのサブディスプレイにする無料アプリ『DisplayLink』
Googleの3Dウェブ・プラグインO3D
Mayaのシェーディングノードの区分
「ベンジャミン·バトン数奇な人生」でどうやってCGの顔を作ったのか
ニューラルネットワークで画像分類
サンプルコードにも間違いはある?
ZBrushで基本となるブラシ
スクラッチで既存のキャラクターを立体化したい
ZBrushでUndo Historyを動画に書き出す

コメント