コントローラ イーズ カーブと乗数曲線関数

> MAXWrapper > コントローラ > イーズ カーブと乗数曲線関数

 

   

アニメーション コントローラ - クイック ナビゲーション

   

addEaseCurve <controller> [ <float_controller> ] 	 

指定されたコントローラにイーズ カーブを追加します。

そのカーブに対して、オプションの実数コントローラを追加でき、関数に既定値の実数コントローラを生成させることもできます。

トラック ビューにイーズ カーブを追加すると、現在のアニメーション範囲の先頭および末尾に自動的にキーが作成されます。 addEaseCurve() メソッドはこのようなキーを生成しないため、イーズ カーブ コントローラにこれらを追加する必要があります。

3ds Max 2013 の新機能: 3ds Max 2013 で導入された手続き型リタイム コントローラのインスタンスを 2 番目の引数として渡すことで、キーの代わりにマーカを使用して新しいリタイム ワークフローを有効にできます。

   

deleteEaseCurve <controller> <index_integer>   

インデックスで指定されたイーズ カーブをコントローラから削除します。インデックスは基数 1 で、カーブがもともとコントローラに追加されていたのと同じ順序となります。

   

numEaseCurves <controller> 

コントローラ上で稼働中のイーズ カーブの数を返します。

   

applyEaseCurve <controller> <time> 

指定されたコントローラ内の複合イーズ カーブを指定された時間値に適用し、変換した時間を返します。

   

addMultiplierCurve <controller> [ <float_controller> ] 

乗数曲線を、指定されたコントローラに適用します。

そのカーブに対して、オプションの実数コントローラを追加でき、関数に既定値の実数コントローラを生成させることもできます。

トラック ビューにイーズ カーブを追加すると、現在のアニメーション範囲の先頭および末尾に自動的にキーが作成されます。 addMultiplierCurve() メソッドはこのようなキーを生成しないため、イーズ カーブ コントローラにこれらを追加する必要があります。

   

deleteMultiplierCurve <controller> <index_integer> 

インデックスで指定された乗数曲線をコントローラから削除します。インデックスは基数 1 で、カーブがもともとコントローラに追加されていたのと同じ順序となります。

   

numMultiplierCurves <controller> 

コントローラ上でそのとき稼働中の乗数曲線の数を返します。

   

getMultiplierValue <controller> <time> 

指定された時間値でのコントローラ内の乗数曲線の複合 (浮動小数点) 値を返します。

   

関連プロパティ

イーズ カーブがコントローラに割り当てられている場合、次のコントローラ関連のサブプロパティを使用できます。

<controller>.Ease_Curve -- the controller’r s ease curve value 
<controller>.Ease_Curve.controller -- the ease curve controller itself

   

乗数曲線がコントローラに割り当てられている場合、次のコントローラ関連のサブプロパティを使用できます。

<controller>.Multiplier_Curve -- the controller’r s multiplier curve value 
<controller>.Multiplier_Curve.controller -- the multiplier curve controller itself
注:

イーズ カーブ コントローラでは、値は整数時間のティックとして格納されます。

次のスクリプトは、上記メソッドの例を示しています。

--controller test bed 3
b=box height:10
at time 5 animate on b.height=50
at time 10 animate on b.height=100
bhc=b.height.controller
ec=bezier_float()
at time 0 animate on ec.value = 0
at time 100 animate on ec.value=100*ticksPerFrame
setBeforeORT ec #linear
setAfterORT ec #linear
addEaseCurve bhc ec
applyEaseCurve bhc 50
addEaseCurve bhc ec
numEaseCurves bhc
deleteEaseCurve bhc 2
numEaseCurves bhc
at time 50 bhc.ease_curve
mc=bezier_float()
at time 0 animate on mc.value = 1
at time 100 animate on mc.value = 2
addMultiplierCurve bhc mc
at time 50 bhc.multiplier_curve

関連事項