v3.0
StartIndex から StartIndex + Count までのすべてのキーを削除します。
注:F カーブがロックされている場合は、'Access Denied'(E_ACCESSDENIED)エラーが発生します。キーロックは、OverrideKeyLock 引数を使用して上書きできます。
FCurve.RemoveKeysAtIndex( Int32 in_StartIndex, Int32 in_Count, Boolean in_OverrideKeyLock ); |
FCurve.RemoveKeysAtIndex( StartIndex, Count, [OverrideKeyLock] ); |
パラメータ | タイプ | 説明 |
---|---|---|
StartIndex | Long |
キーの削除を開始するキーインデックス 注:キーのインデックスは、有効な(0から(キーの数- 1)までの値)である必要があります。 |
Count | Long. |
削除するキーの数 注:有効な値は、1~(キーの数から開始インデックスを引いた値)の間の値だけです。 |
OverrideKeyLock | Boolean |
FCurveKey.Locked 値を上書きして、強制的にキーを削除します。 デフォルト値: false |
/* This JScript example illustrates how to use the FCurve.RemoveKeysAtIndex method to remove keys from the entire curve or interval on the fcurve. */ // Create a null Application.NewScene( "", false ); var nullobj = ActiveSceneRoot.AddNull(); var empty; // Add a custom property set to the null var cpset = nullobj.AddCustomProperty( "CustomPSet" ); var x = cpset.AddParameter( "X", siDouble, empty, siAnimatable, "X", "X", empty, 0.25, 0, 10 ); var y = cpset.AddParameter( "Y", siInt4, empty, siAnimatable, "Y", "Y", empty, 5, 0, 100 ); // Create some fcurves var fc1 = x.AddFCurve(); var fc2 = y.AddFCurve(); // Add keys to the fcurves fc1.Resample(); fc2.Resample(); // Lock all the keys on fc2 for ( i=0; i<fc2.GetNumKeys(); i++ ) { key = fc2.GetKeyAtIndex(i); key.Locked = true; } var cKeys = 10, startframe, endframe; // Remove 10 keys starting at index 10 startframe = fc1.GetKeyFrame(10); endframe = fc1.GetKeyFrame(10 + cKeys - 1); LogMessage( "keys in interval " + startframe + "-" + endframe + " : " + fc1.GetNumKeys(startframe,endframe) ); fc1.RemoveKeysAtIndex(10,10); LogMessage( "keys remaining in interval " + fc1.GetNumKeys( startframe, endframe ) ); // remove 10 keys starting at index 0 and override the key lock startframe = fc2.GetKeyFrame(0); endframe = fc2.GetKeyFrame( cKeys-1 ); LogMessage( "keys in interval " + startframe+"-"+endframe+" : " + fc1.GetNumKeys(startframe,endframe) ); fc2.RemoveKeysAtIndex( 0, 10, true ); LogMessage( "keys remaining in interval " + fc2.GetNumKeys(startframe,endframe) ); // Outputs: //INFO : "keys in interval 11-20 : 10" //INFO : "keys remaining in interval 0" //INFO : "keys in interval 1-10 : 10" //INFO : "keys remaining in interval 0" |