移動先: 概要 戻り値 キーワード. 関連項目. フラグ. Python 例.
nodeCast([copyDynamicAttrs=boolean], [disableAPICallbacks=boolean], [disableScriptJobCallbacks=boolean], [disconnectUnmatchedAttrs=boolean], [force=boolean], [swapNames=boolean], [swapValues=boolean])
注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
nodeCast は 「元に戻す」が可能、「照会」が不可能、「編集」が不可能 です。
タイプ A のソース ノードと、タイプ B のターゲット ノードの 2 つのノードを指定し、タイプ A がタイプ B かそのサブタイプである場合、このコマンドはターゲット ノードをソース ノードに置換します。つまりターゲット ノードのすべてのノード コネクション、DAG 階層、アトリビュート値はターゲット ノードから削除され、ソース ノードに配置されます。どちらかのオブジェクトが参照されている、ロックされている、またはサブタイプを共有していない場合、この操作は失敗します。この操作はアトミックです。指定したパラメータが失敗すると、ソース ノードとターゲット ノードはコマンド実行前の初期状態に戻ります。
重要: このコマンドは現在、インスタンス コネクション、インスタンス オブジェクト、そしてリファレンス ノードを無視します。
node, swap, cast
createNode, nodeType
copyDynamicAttrs, disableAPICallbacks, disableScriptJobCallbacks, disconnectUnmatchedAttrs, force, swapNames, swapValues
ロング ネーム(ショート ネーム) |
引数型 |
プロパティ |
disableScriptJobCallbacks(dsj)
|
boolean
|
|
|
disableAPICallbacks(dsa)
|
boolean
|
|
|
force(f)
|
boolean
|
|
|
ノードがベース オブジェクトを共有していない場合でも、ノードのキャスト演算を強制します。コマンドでこのフラグを指定すると、コマンドのスワッピング時に、最適のアトリビュートをマッチさせます。このフラグと '-swapValues/sv' フラグの併用は推奨しません。
|
|
swapValues(sv)
|
boolean
|
|
|
2 つのノード間に共通するアトリビュートのアトリビュート同士を交換するかどうかを示します。たとえば、トランスフォーム ノードと同じベース タイプのノードの場合、回転、スケール、移動の値がコピーされます。
|
|
swapNames(sn)
|
boolean
|
|
|
ノードの名前を入れ替えます。デフォルトでは、名前は入れ替えられません。
|
|
disconnectUnmatchedAttrs(dua)
|
boolean
|
|
|
スワップ アウトするノードにターゲット ノードに存在しないコネクションがある場合、そのコネクションを切断するかどうかを指定します。デフォルトでは、ターゲット ノードをソース ノードと再度入れ替えた場合に復元できなくなるため、これらのコネクションは削除されません。
|
|
copyDynamicAttrs(cda)
|
boolean
|
|
|
ソース ノード上に定義されていないダイナミック アトリビュートがターゲット ノードに含まれている場合に、ソース ノード上に同一のダイナミック アトリビュートを作成し、ターゲット ノードから値とコネクションをコピーします。
|
|
: コマンドの作成モードで使用可能なフラグ
|
: コマンドの編集モードで使用可能なフラグ
|
: コマンドの照会モードで使用可能なフラグ
|
: タプルまたはリストとして渡された複数の引数を持てるフラグ
|
import maya.cmds as cmds
tr1 = cmds.createNode( 'transform' )
tr2 = cmds.createNode( 'transform' )
cmds.connectAttr( tr1 + ".t", tr2 + ".t" )
cmds.connectAttr( tr2 + ".r", tr1 + ".r" )
theT = tr1
cmds.select( theT, replace=1 )
cmds.addAttr( ln="unmatched", at="long" )
middle_man = cmds.createNode( 'transform' )
cmds.connectAttr( theT + ".unmatched", middle_man + ".tx" )
swapNode = cmds.createNode( 'transform' )
cmds.nodeCast( theT, swapNode, disconnectUnmatchedAttrs=true )