FCurve.Smooth

FCurve.Smooth

導入

v5.1

詳細

指定されたフィルタを使用して、指定されたタイムスパンの F カーブをスムージングします。スムージングを実行すると、キー間の平均をとって、F カーブの鋭いスパイクやギザギザが取り除かれます。F カーブは最初にスムージングされ、in_dSamplingStep のサンプリングステップで再サンプリングされます。

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

C#構文

FCurve.Smooth( Object in_StartFrame, Object in_EndFrame, Double in_dFilterSize, Double in_dSamplingStep, siFCurveSmoothFilterType in_filterType, Double in_dGaussianVariance );

スクリプト構文

FCurve.Smooth( [StartFrame], [EndFrame], [FilterSize], [SamplingStep], [FilterType], [GaussianVariance] );

パラメータ

パラメータ タイプ 説明
StartFrame Variant スムージングする範囲の開始時間EndFrame 値よりも低い値にする必要があります。

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

EndFrame Variant スムージングを終了する時間(フレーム)

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

FilterSize Double 新しいキーを計算するために平均化するキーの数を定義します。 フィルタのサイズが大きいほど直線に近いカーブが得られます。この値は 1より大きい値である必要があります。

デフォルト値: 5

SamplingStep Double スムージングの後に F カーブに適用されたサンプリングステップ。FilterSize よりも小さい値にする必要があります。

デフォルト値: 1

FilterType siFCurveSmoothFilterType スムージングに使用するフィルタのタイプを指定します。

デフォルト値:siFCurveAverageFilterType

GaussianVariance Double ガウスフィルタの変位。スムージングの程度をコントロールします。 変位の値が大きいほど滑らかなファンクション カーブになります。この値は 0 より大きい値である必要があります。

デフォルト値: 1

JScript の例

/*

	This example illustrates how to use FCurve.Smooth 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( 1,50, 5 );

nullobj.posy.AddFCurve().Resample( 1,50, 5 );

var posxFC = nullobj.posx.Source;

var posyFC = nullobj.posy.Source;

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

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

// Smooth the posx curve

posxFC.Smooth(1,50);

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

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

// Outputs:

//INFO : posx curve : 11

//INFO : posy curve : 11

//INFO : smoothed posx curve : 50

//INFO : posy curve : 11

関連項目

FCurve.Resample FCurve.Fit