ジャンプ先: 概要. 戻り値. フラグ. Python 例.
duplicate(
[objects...]
, [inputConnections=boolean], [instanceLeaf=boolean], [name=string], [parentOnly=boolean], [renameChildren=boolean], [returnRootsOnly=boolean], [smartTransform=boolean], [upstreamNodes=boolean])
注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。
duplicate は、取り消し可能、照会不可能、および 編集不可能 です。
指定したオブジェクトが複製されます。オブジェクトを指定しないと、選択したリストが複製されます。
Smart トランスフォーム機能を使用すると、複製間で事前に行われた変換に基づき、複製処理で新しい複製オブジェクトをトランスフォームできます。
例: オブジェクトを複製して別の位置に移動します。スマート複製フラグを使用して再度複製します。このオブジェクトは、前に移動したのと同じ距離だけ、もう一度移動されます。
注: スマート複製間でリストを変更すると、トランスフォーム情報が削除されます。
上流ノード オプションにより、選択したオブジェクトまでのすべての上流ノードの複製が強制されます。上流ノードとは、選択したノードまでのすべてのノードのことです。ディペンデンシー グラフの走査中に別の dagObject が検出された場合は、そのノードとすべての親トランスフォームも複製されます。
inputConnections オプションでは、入力接続の複製が、複製されるノードまで強制されます。これは、相互に接続した 2 つのノードを、複製するノードとして指定する場合に特に便利です。このような場合は、ノード間の接続も複製されます。
関連項目: instance
inputConnections, instanceLeaf, name, parentOnly, renameChildren, returnRootsOnly, smartTransform, upstreamNodes
フラグはコマンドの作成モードで表示できます
|
フラグはコマンドの編集モードで表示できます
|
フラグはコマンドの照会モードで表示できます
|
フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。
|
import maya.cmds as cmds
# Create a hierarchy of two spheres;
cmds.sphere( n='sphere1' )
cmds.move( 3, 0, 0 )
cmds.sphere( n='sphere2' )
cmds.move( -3, 0, 0 )
cmds.group( 'sphere1', 'sphere2', n='group1' )
cmds.circle( n='circle1' )
# Create a duplicate of the group
cmds.duplicate( 'group1' )
# Result: group2 sphere1 sphere2 #
cmds.undo()
cmds.duplicate( 'group1', rr=True )
# Result: group2 #
# Create a row of 4 circles equally spaced using
# the -smartTransform flag.
cmds.duplicate( 'circle1' )
cmds.move( 3, 0, 0 )
cmds.duplicate( st=True )
cmds.duplicate( st=True )
# Duplicate a sphere along with its input connections.
# If animCurves were feeding into original transforms of the
# sphere, they will feed into the duplicated ones also.
# If the sphere has history (in this case it does),
# then the history is connected to the duplicate. Note that
# changing the radius for the makeNurbSphere for the sphere1
# affects the duplicated sphere.
#
cmds.duplicate( 'group1|sphere1', ic=True )
cmds.move( 0, 0, 0 )
cmds.setAttr( 'makeNurbSphere1.radius', 2 )
# Duplicate selected objects along with their upstream nodes
# and connections. This will duplicate the history.
cmds.select( 'group1|sphere2' )
cmds.duplicate( un=True )