v3.0
指定されたフレームにキーを追加し、新しいキーのインデックスを戻します。このメソッドを実行すると、F カーブのすべてのシェイプが変わります。シェイプを変えずに既存のプロファイルに沿ってキーを追加したい場合は、代わりに FCurve.InsertKeyAtFrame メソッドを使用してください。
注:F カーブがロックされている場合は、'Access Denied'(E_ACCESSDENIED)エラーが発生します。
トレランス引数は、特定範囲内のすべてのキーをマージする場合に使用できます。範囲は Frame - Tolerance および Frame + Tolerance で定義されます。マージされたキーは、この範囲内の近似キーのコンストレイントを継承します。
Int32 FCurve.AddKey( Object in_Frame, Object in_Value, Double in_Tolerance, Boolean in_Overwrite ); |
oLong = FCurve.AddKey( [Frame], [Value], [Tolerance], [Overwrite] ); |
| パラメータ | タイプ | 説明 | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Frame | Variant |
キーを追加する時間(フレーム) デフォルト値:現在の時間 |
||||||||
| Value | Variant |
キーの値 標準F カーブおよびロー F カーブの場合は double 値(VT_R8)を使用します。 整数F カーブの場合は LONG 値(VT_I4)、ブールF カーブの場合は variant bool値(VT_BOOL、VARIANT_TRUE、VARIANT_FALSE)を使用します。 デフォルト値:指定されたフレームの既存のカーブの値 |
||||||||
| Tolerance | Double |
キーの許容範囲 デフォルト値: -1
|
||||||||
| Overwrite | Boolean |
既存のキーを上書きします。ロック状態のキーを上書きします。 デフォルト値: False |
/*
This example illustrates how to add keys to an fcurve and how to use
the editing recording feature so that only one undo event is put onto the
undo/redo stack.
*/
// Create a null
Application.NewScene( "", false );
var nullobj = ActiveSceneRoot.AddNull();
// Create an fcurve on the posx parameter from the null
var fc = nullobj.posx.AddFCurve();
// Define the number of keys
var nbkeys = 100 ;
// Start editing the fcurve
fc.BeginEdit();
// Add keys to the fcurve
for ( i=0; i<nbkeys; i++ )
{
val = (Math.sin( 1/(i+1) ) * 10);
fc.AddKey( i, val );
}
// End editing the fcurve and put the undo event onto
// the undo/redo stack
fc.EndEdit(); |