ジャンプ先: 概要. 戻り値. フラグ. Python 例.

概要

bufferCurve( animatedObject , [animation=string], [attribute=string], [controlPoints=boolean], [exists=boolean], [float=floatrange], [hierarchy=string], [includeUpperBound=boolean], [index=uint], [overwrite=boolean], [shape=boolean], [swap=boolean], [time=timerange], [useReferencedCurve=boolean])

注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。

bufferCurve は、取り消し可能、照会可能、および編集不可能です。

このコマンドは、キーセット上に作用します。キーセットは、1 つまたは複数のアニメーション カーブ上の指定したタイム レンジ内のキー グループとして定義されます。

キーセットを構成するアニメーション カーブは、「-animation」フラグの値に依存します。

-animation フラグを使用して、「translateX」など attributeName という形式の引数を取る、多目的な -attribute フラグによって固有に識別されるカーブをオーバーライドすることができます。

アニメーション カーブ上の各キーは、カーブの時間値またはインデックスによって識別されます。時間とインデックスは、単独にあるいはリストの一部または範囲として指定することができます(例を参照)。

このコマンドは、アニメートされたオブジェクトのバッファ カーブを管理するのに役立ちます。

戻り値

intバッファ カーブの数

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

フラグ

animation, attribute, controlPoints, exists, float, hierarchy, includeUpperBound, index, overwrite, shape, swap, time, useReferencedCurve
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
animation(an) string create
このコマンドが、自身が影響を与えるアニメーションを取得する場所です。有効な値は「objects」、「keys」、「keysOrObjects」で、既定は「keysOrObjects」です(詳細については、説明を参照してください)。
attribute(at) string createmultiuse
選択するアトリビュートのリストです。

照会モードでは、このフラグに値が必要になります。

controlPoints(cp) boolean create
このフラグは、アトリビュートのリストにシェイプのコントロール ポイントを含めるかどうかを明示的に指定します(「-s」フラグを参照)。既定: false(「pasteKey」コマンドでは無効)。

照会モードでは、このフラグに値が必要になります。

exists(ex) boolean query
指定したアトリビュートに現在バッファ カーブが存在する場合、true を返します。それ以外は false を返します。
float(f) floatrange createmultiuse
時間ベースの animCurve 上の時間ベースでないキー(またはキー レンジ)を固有に表す値です。有効な floatRange は、単一の値(-f 10)、または上下限をコロンで区切った文字列(-f "10:20")です。

照会モードでは、このフラグに値が必要になります。

hierarchy(hi) string create
階層展開オプションです。有効な値は、「above」、「below」、「both」、「none」です。(「pasteKey」コマンドでは無効)。

照会モードでは、このフラグに値が必要になります。

includeUpperBound(iub) boolean create
-t/time または -f/float フラグがキーの範囲を表す場合に、範囲の上限のキーをキーセットに含めるかどうかを定義します。既定値: true。このフラグは、-t/time フラグの引数が上下限が指定したタイム レンジである場合に限り有効です(「pasteKey」コマンドでこのフラグを使用するときに「replace」、「fitReplace」、「scaleReplace」などのオプションを指定すると、このフラグは、置き換えられるターゲット カーブの時間範囲のみを参照します。このフラグは、クリップボードからペーストされたカーブには影響しません)。
index(index) uint createmultiuse
アニメーション カーブ上のキーのインデックス

照会モードでは、このフラグに値が必要になります。

overwrite(ov) boolean create
バッファ カーブを作成します。true は、バッファ カーブがすでに存在するかどうかに関係なく、バッファ カーブを作成することを意味します。false は、バッファ カーブがすでに存在する場合は、そのバッファ カーブをそのままにしておくことを意味します。フラグが指定されていないときは、コマンドは既定で -overwrite false になります
shape(s) boolean create
トランスフォームの下にあるシェイプのアトリビュート(「controlPoints」以外)も考慮します。既定: true(「pasteKey」コマンドでは無効)。

照会モードでは、このフラグに値が必要になります。

swap(sw) boolean create
バッファ カーブのあるアニメートされたアトリビュートに対して、バッファ カーブを現在のアニメーション カーブと入れ替えます。
time(t) timerange createmultiuse
時間ベースのアニメーション カーブ上のキー(またはキー レンジ)を固有に表す時間です。単一のフレームまたはフレーム範囲の設定方法については、以下のコード例を参照してください。

照会モードでは、このフラグに値が必要になります。

useReferencedCurve(urc) boolean createquery
作成モードでは、参照カーブにバッファ カーブを設定します。ファイルからの参照ではないカーブではこのフラグは無視されます。照会モードでは、選択したキーが参照カーブをバッファ カーブとして表示している場合は true を返し、そうでない場合は false を返します。

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

Python 例

import maya.cmds as cmds

# Keys on animation curves are identified by either
# their time values or their indices.  Times and indices can
# be given as a range or list of ranges.

# time=('10pal','10pal') means the key at frame 10 (PAL format).
# time=[(1.0,1.0),('15ntsc','15ntsc'),(20,20)] means the keys at time 1.0 second, frame 15 (in NTSC format), and time 20 (in the currently defined global time unit).
# time=(10,20) means all keys in the range from 10 to 20, inclusive, in the current time unit.
# Omitting one end of a range means "go to infinity", as in the following examples:
# time=(10,) means all keys from time 10 (in the current time unit) onwards.
# time=(0,10) means all keys up to (and including) time 10 (in the current time unit).
# time=() is a short form to specify all keys.
# index=(0,0) means the first key of each animation curve. (Indices are 0-based.)
# index=[(2,2),(5,5),(7,7)] means the 3rd, 6th, and 8th keys.
# index=(1,5) means the 2nd, 3rd, 4th, 5th, and 6th keys of each animation curve.

# Create a buffer curve for the selected keys
cmds.bufferCurve( animation='keys', overwrite=True )

# Set the referenced anim curve to the buffer curve
cmds.bufferCurve( useReferencedCurve=True)

# Swap the buffer curve for the selected keys
cmds.bufferCurve( animation='keys', swap=True )