class cymel.core.cyobjects.node_c.Node_c¶
- class cymel.core.cyobjects.node_c.Node_c(*args, **kwargs)¶
ベースクラス:
CyObject
Node
クラスでサポートする機能の中核。固定引数無しでのクラスインスタンス生成時のノード生成をサポート。
Methods:
DAGパスを含まないノード名を絶対ネームスペース表記で得る。
ノードが「必ずアニメーションに影響を与える」と設定されているかどうか。
ノードタイプの分類名を得る。
クラスに紐付けられたノードタイプの分類名を得る。
connections
([s, d, c, t, et, scn, source, ...])コネクトされているプラグやノードのリストを得る。
createNode
(**kwargs)クラスに関連付けられたタイプのノードを生成する。
destinations
(**kwargs)unitConversionノードをスキップしつつ、出力先のプラグかノードのリストを得る。
destinationsWithConversions
(**kwargs)outputs
の別名(unitConversionノードをスキップせずに、出力先のプラグかノードのリストを得る)。hasAttr
(name[, alias, shape, strict])指定した名前のアトリビュートが在るかどうか。
hasFn
(fn)指定ファンクションタイプと互換性があるかどうか。
ノード名がユニークであるかどうかを得る。
inputs
(**kwargs)上流のコネクションを得る。
クラスに紐付けられたノードタイプが抽象タイプかどうかを得る。
DAGノードかどうか。
デフォルトノードかどうか。
リファレンスファイルのノードかどうか。
isInstanceOf
(other)たとえDAGパスが違っても同一ノードであるかどうか。
isJoint
()joint 派生ノードかどうか。
isLocked
()ロックされているかどうか。
リネーム可能かどうか。
isShape
()shape 派生ノードかどうか。
isShared
()共有ノードかどうか。
isFromReferencedFile
との違いがよくわからない。transform 派生ノードかどうか。
isType
(typename)指定ノードタイプの派生型かどうか。
mfn
()Python API 2 のファンクションセットを得る。
mfn1
()Python API 1 のファンクションセットを得る。
mfn1_
()checkValid
を省略して、 Python API 1 のファンクションセットを得る。mfn_
()checkValid
を省略して、 Python API 2 のファンクションセットを得る。mnode
()Python API 2 の MObject を得る。
mnode1
()Python API 1 の MObject を得る。
mnode1_
()checkValid
を省略して、 Python API 1 の MObject を得る。mnode_
()checkValid
を省略して、 Python API 2 の MObject を得る。mpath
()Python API 2 の MDagPath を得る。
mpath1
()Python API 1 の MDagPath を得る。
mpath1_
()checkValid
を省略して、 Python API 1 の MDagPath を得る。mpath_
()checkValid
を省略して、 Python API 2 の MDagPath を得る。newObject
(data)内部データとともにインスタンスを生成する。
node
()ノードを得る(このオブジェクト自身が得られる)。
nodeName
([removeNamespace])DAGパスを含まないノード名を得る。
checkValid
を省略して、DAGパスを含まないノード名を得る。outputs
(**kwargs)下流のコネクションを得る。
plug
(name[, pcls, strict])ノードのアトリビュートを得る。
プラグクラスを得る。
plug_
(name[, pcls, strict])checkValid
を省略して、ノードのアトリビュートを得る。ノードタイプがプラグインの場合にそのプラグイン名を得る。
クラスに紐付けられたノードタイプがプラグインの場合にそのプラグイン名を得る。
plugsAffectsWorldSpace
([pcls])ワールド空間出力に影響を与えるプラグのリストを得る。
クラスに結び付けられているノードタイプのタプルを得る。
setPlugClass
([pcls])このインスタンスのみに有効なプラグクラスをセットする。
sources
(**kwargs)unitConversionノードをスキップしつつ、入力しているプラグかノードを得る。
sourcesWithConversions
(**kwargs)inputs
の別名(unitConversionノードをスキップせずに、入力しているプラグかノードを得る)。このオブジェクトに直接設定されたプラグクラスを得る。
type
()ノードタイプ名を得る。
typeId
()ノードタイプの TypeId を得る。
typeId_
()クラスに紐付けられたノードタイプの TypeId を得る。
type_
()クラスに紐付けられたノードタイプ名を得る。
worldSpacePlugs
([pcls])ワールド空間出力プラグのリストを得る。
Attributes:
- TYPE_BITS = 0¶
クラスでサポートしているノードの特徴を表す。
Methods Details:
- affectsAnimation()¶
ノードが「必ずアニメーションに影響を与える」と設定されているかどうか。
通常のノードは False であり、 評価グラフの作成プロセスにおいて自動的に判断されるが、 time や expression などの ごく一部のノードでは True となる。
- 戻り値の型:
- connections(s=True, d=True, c=False, t=None, et=False, scn=False, source=True, destination=True, connections=False, type=None, exactType=False, skipConversionNodes=False, asPair=False, asNode=False, index=None, pcls=None)¶
コネクトされているプラグやノードのリストを得る。
- パラメータ:
s|source (bool) -- 上流のコネクションを得る。
d|destination (bool) -- 下流のコネクションを得る。
c|connections|asPair (bool) -- コネクト元のプラグもエアで得る。
t|type (str) -- 指定したノードタイプに限定する。
et|exactType (bool) -- type指定の場合に、派生タイプを許容せずに 指定タイプとの厳密な一致のみとするかどうか。
scn|skipConversionNodes (bool) -- unitConversion系ノードをスキップするかどうか。
asNode (bool) -- コネクト先をプラグではなくノードで得る。
index (int) -- 結果を1つだけ得る場合にインデックスを指定する。 負数も指定可能。 結果は
list
ではなく単一となる(得られない場合は None )。 範囲外を指定してもエラーにはならず None となる。pcls -- 得たいプラグオブジェクトのクラス。 省略時は
plugClass
で得られる 現在のデフォルトプラグクラスが使用される。
- 戻り値の型:
- classmethod createNode(**kwargs)¶
クラスに関連付けられたタイプのノードを生成する。
このメソッド自体は生成されたノードの名前(文字列)が返されるが、 固定引数無しでクラスインスタンスを生成する場合に内部的に呼び出される。
- 戻り値の型:
注釈
nodetypes.registerNodeClass
で登録するカスタムノードクラスでは、_verifyNode
メソッドの条件を満たすための処理を追加するために オーバーライドすることを推奨する。
- destinations(**kwargs)¶
unitConversionノードをスキップしつつ、出力先のプラグかノードのリストを得る。
outputs
に skipConversionNodes=True を指定することと同等であり、 その他のオプションは全て指定可能。- 戻り値の型:
- hasAttr(name, alias=True, shape=True, strict=False)¶
指定した名前のアトリビュートが在るかどうか。
plug
メソッドと同様、 MFnAttribute の hasAttribute よりも判定基準はゆるく、 ドットから始まるフルパス指定が必要な場合でも省略を許容する。
- inputs(**kwargs)¶
上流のコネクションを得る。
connections
に s=True, d=False を指定することと同等であり、 その他のオプションも全て指定可能。
- classmethod isAbstractType()¶
クラスに紐付けられたノードタイプが抽象タイプかどうかを得る。
戻り値は整数で、 0 は抽象タイプではなく、 1 は抽象タイプ、 2 はメタクラス(プラグインインタフェースなどのために存在するが、 実際は本当のノードタイプではない) の意味となる。
- 戻り値の型:
注釈
適合検査メソッド付きノードクラスの場合は、 継承しているベーシッククラスに紐付けられたノードタイプについての結果となる。
共有ノードかどうか。
- 戻り値の型:
- isTrackingEdits()¶
isFromReferencedFile
との違いがよくわからない。- 戻り値の型:
- mfn()¶
Python API 2 のファンクションセットを得る。
- 戻り値の型:
- mfn1()¶
Python API 1 のファンクションセットを得る。
- 戻り値の型:
- mfn1_()¶
checkValid
を省略して、 Python API 1 のファンクションセットを得る。- 戻り値の型:
- mfn_()¶
checkValid
を省略して、 Python API 2 のファンクションセットを得る。- 戻り値の型:
- mnode1_()¶
checkValid
を省略して、 Python API 1 の MObject を得る。- 戻り値の型:
- mnode_()¶
checkValid
を省略して、 Python API 2 の MObject を得る。- 戻り値の型:
- mpath()¶
Python API 2 の MDagPath を得る。
得られる MDagPath は内部データの複製であるため、 書き換えても問題ない。
DAGパスをサポートするクラスのインスタンスでなくても、 実際のノードがDAGノードなら得ることができる。
- 戻り値の型:
MDagPath or None
- mpath1()¶
Python API 1 の MDagPath を得る。
得られる MDagPath は内部データの複製であるため、 書き換えても問題ない。
DAGパスをサポートするクラスのインスタンスでなくても、 実際のノードがDAGノードなら得ることができる。
- 戻り値の型:
MDagPath or None
- mpath1_()¶
checkValid
を省略して、 Python API 1 の MDagPath を得る。- 戻り値の型:
- mpath_()¶
checkValid
を省略して、 Python API 2 の MDagPath を得る。- 戻り値の型:
- classmethod newObject(data)¶
内部データとともにインスタンスを生成する。
内部データはブラックボックスであるものとし、 本メソッドをオーバーライドする場合も、 基底メソッドを呼び出して処理を完遂させなければならない。
内部データを拡張する場合は
internalData
も オーバーライドすること。- パラメータ:
cls (
type
) -- 生成するインスタンスのクラス。data -- インスタンスにセットする内部データ。
- 戻り値の型:
指定クラス
- nodeName(removeNamespace=False)¶
DAGパスを含まないノード名を得る。
得られる名前は、 Maya の相対ネームスペースモードの影響を受ける。 常に絶対ネームスペースで得たい場合には
absoluteName
が利用できる。
- nodeName_()¶
checkValid
を省略して、DAGパスを含まないノード名を得る。- 戻り値の型:
- outputs(**kwargs)¶
下流のコネクションを得る。
connections
に s=False, d=True を指定することと同等であり、 その他のオプションも全て指定可能。
- plug(name, pcls=None, strict=False)¶
ノードのアトリビュートを得る。
Python属性としても同じように取得できるが、 Pythonの名前と衝突する場合のためにこのメソッドがある。
hasAttribute
メソッドと同様、 MFnAttribute の attribute よりも判定基準はゆるく、 ドットから始まるフルパス指定が必要な場合でも省略を許容する。
- plugClass()¶
プラグクラスを得る。
これは、
setPlugClass
やCyObject.setGlobalPlugClass
で変更可能。- 戻り値の型:
- plug_(name, pcls=None, strict=False)¶
checkValid
を省略して、ノードのアトリビュートを得る。hasAttribute
メソッドと同様、 MFnAttribute の attribute よりも判定基準はゆるく、 ドットから始まるフルパス指定が必要な場合でも省略を許容する。
- plugsAffectsWorldSpace(pcls=None)¶
ワールド空間出力に影響を与えるプラグのリストを得る。
クラスに結び付けられているノードタイプのタプルを得る。
NodeTypes.relatedNodeTypes
をクラスメソッドとして 呼び出せるようにしたもの。ベーシッククラスのノードタイプは1つだが、 検査メソッド付きカスタムクラスの場合は 複数タイプへの紐付けも有り得る。
- 戻り値の型:
- setPlugClass(pcls=None)¶
このインスタンスのみに有効なプラグクラスをセットする。
- sources(**kwargs)¶
unitConversionノードをスキップしつつ、入力しているプラグかノードを得る。
inputs
に skipConversionNodes=True を指定することと同等であり、 その他のオプションは全て指定可能。- 戻り値の型:
- thisPlugClass()¶
このオブジェクトに直接設定されたプラグクラスを得る。
未設定なら None が返される。
これは、
setPlugClass
で変更可能。- 戻り値の型:
type
or None