ジャンプ先: 概要. 戻り値. キーワード. 関連. フラグ. Python 例.

概要

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

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

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 )