ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.
setDrivenKeyframe(
[objects]
, [attribute=string], [controlPoints=boolean], [currentDriver=string], [driven=boolean], [driver=boolean], [driverValue=float], [hierarchy=string], [inTangentType=string], [insert=boolean], [insertBlend=boolean], [outTangentType=string], [shape=boolean], [value=float])
注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。
setDrivenKeyframe は、取り消し可能、照会可能、および編集可能です。
このコマンドは、ドリブン キーフレームを設定します。ドリブン キーフレームは、通常のキーフレームと似ています。ただし、標準キーフレームではグラフ エディタ(Graph Editor)の X 軸が常に時間に設定されているのに対して、drivenkeyframe の場合、グラフ エディタの X 軸としてユーザが任意のアトリビュートを選択することができます。
たとえば、蛇口からの水の放出にキーフレームを設定して、蛇口のハンドルを y 軸中心に回転したときに蛇口から水を放出させることができます。この例では、蛇口からの水の放出はドリブン アトリビュートと呼ばれます。ハンドルの回転はドライバと呼ばれます。setDrivenKeyframe を使用して蛇口からの水の放出とハンドルの回転との間にリレーションを設定したら、グラフ エディタを使用して、キーフレーム設定されたオブジェクトのアニメーション カーブを修正するのと同じように、アトリビュート間のリレーションを修正します。
単一のドライバによってドライブされるアトリビュートの場合、ディペンデンシー グラフは次のように接続されます。
driver attribute ---> animCurve ---> driven attribute
ドリブン キーフレームは複数のドライバを使用して設定できます。複数のドライバによるエフェクトは、ブレンド ノードによって結合されます。
照会モードでは、戻り値のタイプは照会されたフラグに基づきます。
autoKeyframe, findKeyframe, setKeyPath, setKeyframe
attribute, controlPoints, currentDriver, driven, driver, driverValue, hierarchy, inTangentType, insert, insertBlend, outTangentType, shape, value
ロング ネーム(ショート ネーム) |
引数タイプ |
プロパティ |
attribute(at)
|
string
|
|
|
insert(i)
|
boolean
|
|
|
所定の時間にキーを挿入し、アニメーション カーブのシェイプを保持します。注: 挿入されたキーの接線のタイプは固定されるため、カーブ シェイプを保持できます。
|
|
inTangentType(itt)
|
string
|
|
|
このコマンドによって設定されるキーフレームのイン接線タイプです。有効な値は、「spline」、「linear」、「fast」、「slow」、「flat」、「stepped」、「step next」、「fixed」、「clamped」、「plateau」です。既定は「keyTangent -q -g -inTangentType」です。
|
|
outTangentType(ott)
|
string
|
|
|
このコマンドによって設定されるキーフレームのアウト接線タイプです。有効な値は、「spline」、「linear」、「fast」、「slow」、「flat」、「stepped」、「step next」、「fixed」、「clamped」、「plateau」です。既定は「keyTangent -q -g -outTangentType」です。
|
|
hierarchy(hi)
|
string
|
|
|
このコマンドが作用するオブジェクトを、指定した(またはアクティブな)ターゲット オブジェクトからの相対位置に基づいて制御します。有効な値は、「above」、「below」、「both」、「none」です。既定は「hierarchy -query」です。
|
|
shape(s)
|
boolean
|
|
|
トランスフォームの下にあるシェイプのアトリビュート(「controlPoints」以外)も考慮します。既定: true
|
|
controlPoints(cp)
|
boolean
|
|
|
アトリビュートのリストにシェイプの制御点を含めるかどうかを明示的に指定します(「-s」フラグを参照)。既定: false。
|
|
insertBlend(ib)
|
boolean
|
|
|
true の場合、pairBlend ノードは、チャネルをドライブするアニメーション カーブ以外のノードを持つチャネルに挿入されるので、そのチャネルでアニメーションがブレンドされるようにできます。false の場合、これらのチャネルではキーが挿入されません。このフラグを指定しないと、アニメーションのブレンド用のグローバル プリファレンスに基づいて、ブレンドが挿入されます。
|
|
currentDriver(cd)
|
string
|
|
|
現在のドリブン キーフレームで使用するドライバを、引数として渡すアトリビュートに設定します。
|
|
driver(dr)
|
boolean
|
|
|
アトリビュートの使用可能なドライバのリストを返します。
|
|
driven(dn)
|
boolean
|
|
|
選択した項目のドリブン アトリビュートのリストを返します。
|
|
driverValue(dv)
|
float
|
|
|
このキーフレームで使用するドライバの値。既定は現在値です。
|
|
value(v)
|
float
|
|
|
フラグはコマンドの作成モードで表示できます
|
フラグはコマンドの編集モードで表示できます
|
フラグはコマンドの照会モードで表示できます
|
フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。
|
import maya.cmds as cmds
# Create a curve and a cone
#
cmds.curve(d=3,p=[(-10, 0, 0),(-6, 0, 10),(-3, 0, -10),(10, 0, 0)],k=[0, 0, 0, 1, 1, 1])
cmds.polyCone()
# To set the keyframe on the selected object's translateX based on
# curve1's rotateZ:
cmds.setDrivenKeyframe( at='translateX', cd='curve1.rz' )
# To set the keyframe on pCone1.tx based on the value of curve1.rz:
cmds.setDrivenKeyframe( 'pCone1.tx', cd='curve1.rz' )
# To query the current driver of pCone1.tx:
cmds.setDrivenKeyframe( 'pCone1.tx', q=True, cd=True )
# To query the available drivers of pCone1.tx:
cmds.setDrivenKeyframe( 'pCone1.tx', q=True, dr=True )