FCurve.Fit

導入

v5.1

詳細

F カーブを指定した時間範囲内にフィットさせます。F カーブの元のシェイプを維持しながら、余分なキーを削除します。

注:F カーブがロックされているか、内部のいずれかのキーがロックされている場合は、'Access Denied'(E_ACCESSDENIED)エラーが発生します。

C#構文

FCurve.Fit( Object in_StartFrame, Object in_EndFrame, Double in_dFittingTolerance );

スクリプト構文

FCurve.Fit( [StartFrame], [EndFrame], [FittingTolerance] );

パラメータ

パラメータ タイプ 説明
StartFrame Variant フィットさせる範囲の開始時間EndFrame 値よりも低い値にする必要があります。

デフォルト値:F カーブの最初のキーフレーム。キーがない場合は、PlayControl の In フレーム値

EndFrame Variant フィットさせる範囲の終了時間(フレーム単位)

デフォルト値:最後のキーフレーム。キーがない場合は、PlayControl の Out フレーム値

FittingTolerance Double フィットの精度を調整します(つまり、F カーブとフィットされたF カーブの最大距離を指定します)。小さい値を指定すると使用するキーの数が多くなり、カーブの元の形状に近いカーブが得られます。大きい値を指定すると使用するキーの数が少なくなり、元のカーブとは異なるカーブが得られます。この値は 0 より大きい値である必要があります。

デフォルト値: 0.1

JScript の例

/*

	This example illustrates how to use FCurve.Fit method

*/

// Create a null

NewScene("", false);

var nullobj = Application.ActiveSceneRoot.AddNull();

// Use the Resample method to add keys to empty fcurves

nullobj.posx.AddFCurve().Resample();

nullobj.posy.AddFCurve().Resample();

var posxFC = nullobj.posx.Source;

var posyFC = nullobj.posy.Source;

Application.LogMessage( "posx curve : " + posxFC.GetNumKeys() );

Application.LogMessage( "posy curve : " + posyFC.GetNumKeys() );

// Fit the posx curve

posxFC.Fit();

Application.LogMessage( "fitted posx curve : " + posxFC.GetNumKeys() );

Application.LogMessage( "posy curve : " + posyFC.GetNumKeys() );

// Outputs:

//INFO : posx curve : 100

//INFO : posy curve : 100

//INFO : fitted posx curve : 2

//INFO : posy curve : 100

関連項目

FCurve.Resample FCurve.Smooth