移動先: 概要 戻り値 キーワード. 関連項目. フラグ. Python 例.

概要

nodeCast([copyDynamicAttrs=boolean], [disableAPICallbacks=boolean], [disableScriptJobCallbacks=boolean], [disconnectUnmatchedAttrs=boolean], [force=boolean], [swapNames=boolean], [swapValues=boolean])

注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。

nodeCast は 「元に戻す」が可能、「照会」が不可能「編集」が不可能 です。

タイプ A のソース ノードと、タイプ B のターゲット ノードの 2 つのノードを指定し、タイプ A がタイプ B かそのサブタイプである場合、このコマンドはターゲット ノードをソース ノードに置換します。つまりターゲット ノードのすべてのノード コネクション、DAG 階層、アトリビュート値はターゲット ノードから削除され、ソース ノードに配置されます。どちらかのオブジェクトが参照されている、ロックされている、またはサブタイプを共有していない場合、この操作は失敗します。この操作はアトミックです。指定したパラメータが失敗すると、ソース ノードとターゲット ノードはコマンド実行前の初期状態に戻ります。 重要: このコマンドは現在、インスタンス コネクション、インスタンス オブジェクト、そしてリファレンス ノードを無視します。

戻り値

int成功は 0、失敗は 1 です。

キーワード

node, swap, cast

関連項目

createNode, nodeType

フラグ

copyDynamicAttrs, disableAPICallbacks, disableScriptJobCallbacks, disconnectUnmatchedAttrs, force, swapNames, swapValues
ロング ネーム(ショート ネーム) 引数型 プロパティ
disableScriptJobCallbacks(dsj) boolean create
add comment
disableAPICallbacks(dsa) boolean create
add comment
force(f) boolean create
ノードがベース オブジェクトを共有していない場合でも、ノードのキャスト演算を強制します。コマンドでこのフラグを指定すると、コマンドのスワッピング時に、最適のアトリビュートをマッチさせます。このフラグと '-swapValues/sv' フラグの併用は推奨しません
swapValues(sv) boolean create
2 つのノード間に共通するアトリビュートのアトリビュート同士を交換するかどうかを示します。たとえば、トランスフォーム ノードと同じベース タイプのノードの場合、回転、スケール、移動の値がコピーされます。
swapNames(sn) boolean create
ノードの名前を入れ替えます。デフォルトでは、名前は入れ替えられません。
disconnectUnmatchedAttrs(dua) boolean create
スワップ アウトするノードにターゲット ノードに存在しないコネクションがある場合、そのコネクションを切断するかどうかを指定します。デフォルトでは、ターゲット ノードをソース ノードと再度入れ替えた場合に復元できなくなるため、これらのコネクションは削除されません。
copyDynamicAttrs(cda) boolean create
ソース ノード上に定義されていないダイナミック アトリビュートがターゲット ノードに含まれている場合に、ソース ノード上に同一のダイナミック アトリビュートを作成し、ターゲット ノードから値とコネクションをコピーします。

: コマンドの作成モードで使用可能なフラグ : コマンドの編集モードで使用可能なフラグ
: コマンドの照会モードで使用可能なフラグ : タプルまたはリストとして渡された複数の引数を持てるフラグ

Python 例

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 )