ジャンプ先: 概要. 戻り値. 関連. フラグ. Python 例.
setKeyframe(
[objects]
, [animLayer=string], [animated=boolean], [attribute=string], [breakdown=boolean], [clip=string], [controlPoints=boolean], [float=float], [hierarchy=string], [identity=boolean], [inTangentType=string], [insert=boolean], [insertBlend=boolean], [minimizeRotation=boolean], [noResolve=boolean], [outTangentType=string], [respectKeyable=boolean], [shape=boolean], [time=time], [useCurrentLockedWeights=boolean], [value=float])
注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。
setKeyframe は、取り消し可能、照会可能、および編集可能です。
このコマンドは、指定したオブジェクト(コマンド ラインでオブジェクトが指定されていない場合は、アクティブなオブジェクト)にキーフレームを作成します。
新しいキーフレームの既定の時間は現在のタイムです。この動作は、コマンド ラインで「-t」フラグを使用するとオーバーライドされます。
キーフレームの既定値はキーフレームを設定するアトリビュートの現在値です。この動作は、コマンド ラインで「-v」フラグを使用するとオーバーライドされます。
入力アトリビュートとして「time」を持たないアニメーション カーブ(すなわち単位がないアニメーション カーブ)にキーフレームを設定するときは、「-f/-float」を使用して、キーフレームを設定する値を単位なしで指定します。
-time および -float フラグは、1 つのコマンドに統合される場合もあります。
このコマンドは、特定の時間の特定のアトリビュートを適切に評価するために、ディペンデンシー グラフのリレーションを設定します。
照会モードでは、戻り値のタイプは照会されたフラグに基づきます。
autoKeyframe, findKeyframe, setDrivenKeyframe, setKeyPath
animLayer, animated, attribute, breakdown, clip, controlPoints, float, hierarchy, identity, inTangentType, insert, insertBlend, minimizeRotation, noResolve, outTangentType, respectKeyable, shape, time, useCurrentLockedWeights, value
ロング ネーム(ショート ネーム) |
引数タイプ |
プロパティ |
|
animLayer(al)
|
string
|
|
|
新しいキーが指定したアニメーション レイヤに配置されるよう指定します。キーフレーム設定されるオブジェクトがすでにレイヤの一部ではない場合、このフラグは無視されます。
|
|
animated(an)
|
boolean
|
|
|
既にキーフレームがオンになっているアトリビュートにのみキーフレームを追加します。既定: false
|
|
attribute(at)
|
string
|
|
|
breakdown(bd)
|
boolean
|
|
|
キーのブレークダウン状態を設定します。既定は false です。
|
|
clip(c)
|
string
|
|
|
新しいキーが指定したクリップに配置されるよう指定します。キーフレーム設定されるオブジェクトがすでにクリップの一部である場合は、このフラグは無視されます。
|
|
controlPoints(cp)
|
boolean
|
|
|
アトリビュートのリストにシェイプのコントロール ポイントを含明示的に指定します(「-s」フラグを参照)。既定: false
|
|
float(f)
|
float
|
|
|
浮動小数点数ベースのアニメーション カーブ上でキーフレームを設定する時間(float)。
|
|
hierarchy(hi)
|
string
|
|
|
このコマンドが作用するオブジェクトを、指定した(またはアクティブな)ターゲット オブジェクトからの相対位置に基づいて制御します。有効な値は、「above」、「below」、「both」、「none」です。既定は「hierarchy -query」です。
|
|
identity(id)
|
boolean
|
|
|
アニメーション レイヤに ID キーを設定します。ID キーはアニメーション レイヤのエフェクトを無効にするものです。このフラグは、キー設定されるアトリビュートがアニメーション レイヤによりドライブされているときのみに効果を持ちます。
|
|
inTangentType(itt)
|
string
|
|
|
このコマンドによって設定されるキーフレームのイン接線タイプです。有効な値は、「auto」、「clamped」、「fast」、「flat」、「linear」、「plateau」、「slow」、「spline」、および「stepnext」です。既定では「keyTangent -q -g -inTangentType」です。
|
|
insert(i)
|
boolean
|
|
|
所定の時間にキーを挿入し、アニメーション カーブのシェイプを保持します。注: 挿入されたキーの接線のタイプは固定されるため、カーブ シェイプを保持できます。
|
|
insertBlend(ib)
|
boolean
|
|
|
true の場合、pairBlend ノードは、チャネルをドライブするアニメーション カーブ以外のノードを持つチャネルに挿入されるので、そのチャネルでアニメーションがブレンドされるようにできます。false の場合、これらのチャネルではキーが挿入されません。このフラグを指定しないと、アニメーションのブレンド用のグローバル プリファレンスに基づいて、ブレンドが挿入されます。
|
|
minimizeRotation(mr)
|
boolean
|
|
|
回転の場合は、設定されたキーが必ず以前のキーから最短距離になるようにします。既定は false です。
|
|
noResolve(nr)
|
boolean
|
|
|
-value フラグを一緒に使用すると、アニメーション レイヤ全体の値を解決しようとせず、指定した値をアニメーション カーブに直接設定します。
|
|
outTangentType(ott)
|
string
|
|
|
このコマンドによって設定されるキーフレームのアウト接線タイプです。有効な値は、「auto」、「clamped」、「fast」、「flat」、「linear」、「plateau」、「slow」、「spline」、「step」、および「stepnext」です。既定は「keyTangent -q -g -outTangentType」です。
|
|
respectKeyable(rk)
|
boolean
|
|
|
-attribute フラグを一緒に使用すると、キー設定不可のアトリビュートのキー設定が行われないようにします。
|
|
shape(s)
|
boolean
|
|
|
トランスフォームの下にあるシェイプのアトリビュート(「controlPoints」以外)も考慮します。既定: true
|
|
time(t)
|
time
|
|
|
時間ベースのアニメーション カーブ上でキーフレームを設定する時間。
|
|
useCurrentLockedWeights(lw)
|
boolean
|
|
|
既存のキーにキーを設定する場合、新しいロックされたウェイト値に、そのキー接線のロックされたウェイト値を使用します。既定は false です。
|
|
value(v)
|
float
|
|
|
キーフレームを設定する値。値フラグを使用しても、シーンが再評価されるまではキー設定されたアトリビュートは指定した値に変更されません。したがって、アトリビュートの値を直ちに新しい値に更新したい場合は、キー設定に加えて setAttr コマンドを使用します。
|
|
フラグはコマンドの作成モードで表示できます
|
フラグはコマンドの編集モードで表示できます
|
フラグはコマンドの照会モードで表示できます
|
フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。
|
import maya.cmds as cmds
# Set a keyframe at the current time on all "keyable"
# attributes of the selected objects.
#
cmds.setKeyframe()
# Set a keyframe so that translateX has a value of 10
# at the current time, regardless of its current position
#
cmds.setKeyframe( v=10, at='translateX' )
# Set keyframes for translateX on two objects at t=0 and
# t=10 seconds. (Note that if mysteryObject has no
# attribute named translateX, no keyframe is set for mysteryObject.)
#
cmds.setKeyframe( 'nurbsSphere1', 'mysteryObject', attribute='translateX', t=['0sec','10sec'] )