🤖
Maya Python API メモ
困ったらここを見る
クラスの種類
クラス | 説明 |
---|---|
MObjectクラス | ノードやアトリビュート、コンポーネントなどの参照クラス |
MGlobalクラス | シーンのグローバルオブジェクトに対する関数を提供するクラス |
MFn~クラス | MObjectに対するハンドラを提供するクラス |
MIt~クラス | iterableなMFnクラス |
MObject
ノードやアトリビュート、コンポーネントなどのルートクラス。
- isNull()
MObjectが有効かどうかを返す。シーン内に存在するかどうか...? - apiType()
MObjectのapiTypeを返す。返り値はint。
文字列で欲しければ、apiTypeStrプロパティを呼び出す。
apiType一覧は↓ https://download.autodesk.com/us/maya/2009help/API/class_m_fn.html#a89f9fd6c3157993508e460683cc948b
MPlug
属性の接続部分を扱うMObjectのクラス
- isConnected()
接続の有無を返却する - isSource()
ソースとして接続されているかどうかを返却する - isDestination()
宛先として接続されているかどうかを返却する - isKeyable()
キー設定可能かどうかを返却する - connectedTo(asDst:bool,asSrc:bool)
接続されているプラグを検索する。引数はソースとして接続されているか、宛先として接続されているか - asMObject()
プラグの属性の値を取得する。
MPlugArray
MPlugのリスト。pythonのリストのように扱ってもよさそう。
MGlobal
シーンのグローバルオブジェクトに対する関数を提供するクラス
windowに文字列を表示するMGlobal.displayInfo()や選択リストのハンドラを扱うsMGlobal.getActiveSelectionList()などがある。
MDataBlock
MSelectionList
選択リストのハンドラクラス
- add(MObject)
MObjectを追加する。
Globalの選択リストには反映されないので注意。Globalに反映する場合、
MGlobal.setActiveSelectionList(MSelectionList) を実行する。
MFnBase
全てのMFnクラスが継承するルートクラス
- setObject(MObject)
対応しているMObjectをセットする。セットされたオブジェクトは、MFnクラスを通じて操作できる。 - Object()
設定されているMObjectを返す。MObjectが設定されていない場合、エラーを返す。
MFnDependency Node
DependencyNodeのハンドラを提供するクラス
- name()
ノードの名前を返す。 データブロック の場合エラー。 - create(ノードタイプ or id, ノード名="None")
ノードを作成する。タイプと名前を引数にとる。 - getConnections()
コネクションをMPlugArray(list)の形式で返す。
MItSelectionList
MSelectionListをIterableにするクラス。初期時、MSelectionListを引数にとる。
使ってみる
書き方は難しいけど、処理速度はcmdsと比べて早めかも。
あとはalias一覧をとってきたり、細かい処理ができるから書けるときに書く。
Discussion