ジャンプ先: 概要. 戻り値.
キーワード. 関連項目.
フラグ. Python 例.
copySkinWeights([destinationSkin=string],
[influenceAssociation=string],
[mirrorInverse=boolean],
[mirrorMode=string], [noBlendWeight=boolean], [noMirror=boolean], [normalize=boolean], [sampleSpace=uint], [smooth=boolean], [sourceSkin=string], [surfaceAssociation=string],
[uvSpace=[string,
string]])
注意:
オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
copySkinWeights は 「元に戻す」が可能、「照会」が可能、「編集」が可能 です。
skinCluster ウェイトを XYZ 軸の 1
軸の反対側にコピーまたはミラーするコマンドです。このコマンドを使用して、サーフェスから別のサーフェスへ、または同じサーフェス内で、ウェイトをミラーすることができます。
なし
戻り値の型は照会モードでは照会フラグが基になります。
skinCluster, duplicate, mirror
skinCluster, skinPercent
destinationSkin, influenceAssociation, mirrorInverse, mirrorMode, noBlendWeight, noMirror, normalize, sampleSpace, smooth, sourceSkin,
surfaceAssociation, uvSpace
ロング ネーム(ショート ネーム) |
引数型 |
プロパティ |
sourceSkin(ss) |
string |
|
|
destinationSkin(ds) |
string |
|
|
normalize(nr) |
boolean |
|
|
noMirror(nm) |
boolean |
|
|
no mirror フラグを使用すると、ウェイトはミラーされずにコピーされます。 |
|
mirrorInverse(mi) |
boolean |
|
|
値は正領域から負領域へミラーされます。このフラグを使用すると、方向が反転します。 |
|
smooth(sm) |
boolean |
|
|
smooth フラグを使用するとウェイトは、最近接の 1
つの頂点から割り当てられる代わりに、最近接の頂点間で滑らかに補間されます。 |
|
mirrorMode(mm) |
string |
|
|
mirrorMode フラグは、ミラー フラグを使用した場合のミラーリングのプレーン(XY、YZ、XZ
のいずれか)を定義します。デフォルト プレーンは XY です。 |
|
surfaceAssociation(sa) |
string |
|
|
surfaceAssociation
フラグは、ウェイトがサーフェス間で転送される方法、「closestPoint」、「rayCast」、または「closestComponent」を制御します。デフォルトは
closestComponent です。 |
|
influenceAssociation(ia) |
string |
|
|
influenceAssociation フラグは、ソース スキンとターゲット
スキンへのインフルエンスを一致させる方法を制御します。フラグを複数回含めて、すべてのインフルエンスが一致するまで複数の関連付けスキームを順番に起動できます。サポートされている値は、「closestJoint」、「closestBone」、「label」、「name」、「oneToOne」です。デフォルトは
closestJoint です。 |
|
sampleSpace(spa) |
uint |
|
|
アトリビュートの転送を実行する空間を選択します。 0 はワールド空間、1
はモデル空間です。デフォルトはワールド空間です。 |
|
uvSpace(uv) |
[string, string] |
|
|
uvSpace フラグはウェイトの転送が、指定したソース UV セットと目標 UV セットに基づいて UV
空間で実施されることを示します。 |
|
noBlendWeight(nbw) |
boolean |
|
|
no blend フラグを使用すると、スキン クラスタのブレンド ウェイトはターゲットにコピーされません。 |
|
: コマンドの作成モードで使用可能なフラグ |
: コマンドの編集モードで使用可能なフラグ |
: コマンドの照会モードで使用可能なフラグ |
: タプルまたはリストとして渡された複数の引数を持てるフラグ |
import maya.cmds as cmds
# Create plane and a skeleton. Bind the skin.
#
cmds.file( f=True,new=True )
cmds.polyPlane( ch=1, w=10, h=10, sx=5, sy=5, ax=(0,1,0) )
cmds.select( d=True )
cmds.joint( p=(0, 0, -6) )
cmds.joint( p=(0, 0, -4) )
cmds.joint( 'joint1', e=True, zso=True, oj='xyz')
cmds.joint( p=(2, 0, -4) )
cmds.joint( 'joint2', e=True, zso=True, oj='xyz')
cmds.joint( p=(5, 0, -3) )
cmds.joint( 'joint3', e=True, zso=True, oj='xyz')
cmds.select( 'joint2', r=True )
cmds.joint( p=(-2, 0, -4) )
cmds.joint( 'joint4', e=True, zso=True, oj='xyz')
cmds.joint( p=(-5, 0, -3) )
cmds.joint( 'joint5', e=True, zso=True, oj='xyz')
cmds.select( 'joint2', r=True )
cmds.joint( p=(0, 0, 3) )
cmds.joint( 'joint6', e=True, zso=True, oj='xyz')
cmds.joint( p=(5, 0, 5) )
cmds.joint( 'joint7', e=True, zso=True, oj='xyz')
cmds.select( 'joint7', r=True )
cmds.joint( p=(-5, 0, 5) )
cmds.joint( 'joint8', e=True, zso=True, oj='xyz')
cmds.select( 'pPlane1', 'joint1', r=True )
maya.mel.eval('createSkinCluster "-mi 5 -dr 4"' )
# Modify some weights on the -x side of the character
#
cmds.skinPercent( 'skinCluster1', 'pPlane1.vtx[30]', tv=('joint2',0.200000) )
cmds.skinPercent( 'skinCluster1', 'pPlane1.vtx[31]', tv=('joint2',0.200000) )
cmds.skinPercent( 'skinCluster1', 'pPlane1.vtx[24]', tv=('joint5',0.550000) )
cmds.skinPercent( 'skinCluster1', 'pPlane1.vtx[25]', tv=('joint5',0.550000) )
# Mirror the skin weights to the other side of the character
# Mirror inverse is chosen since we want to go from -x to +x, not +x to -x.
#
cmds.copySkinWeights( ss='skinCluster1', ds='skinCluster1', mirrorMode='YZ', mirrorInverse=True )
# Now create a second plane and bind it as skin
#
cmds.polyPlane( ch=1, w=10, h=10, sx=5, sy=5, ax=(0,1,0) )
cmds.select( 'pPlane2', r='joint1' )
maya.mel.eval('createSkinCluster "-mi 5 -dr 4"' )
# Copy the skin weights from the first plane onto the new plane.
# The -noMirror flag is used since we want to copy directly, not mirror.
#
cmds.copySkinWeights( ss='skinCluster1', ds='skinCluster2', noMirror=True )