dA-tools.com

HOME > AfterFx > expression > 実践 > 指数対数

指数 power

aを底とした指数関数 aのx乗をJavaScriptでは y = pow ( a , x ) と表記します。
Math.pow(3, 5) は「3×3×3×3×3」と同じです。

pow2.jpg底 a が0~1の範囲にある指数関数は自然現象を表すのによく使われます。図のようにxの増加に対して滑らかに減少しますが決してゼロにはなりません。
例:光や放射線の減衰

y= pow ( b/a , x )
y=Math.pow(3/(time+1/24),2);

timeがゼロだと除算エラーになるので1コマずらしてあります。

らせん

三角関数で円を描いて、半径を指数で変化させると『らせん』になります。

Ti=time*Math.PI*2 ;
x=Math.sin(Ti);
y=Math.cos(Ti);
r=Math.pow(2,time); //in>out
[x,y]*r+thisProperty

spiral.jpg

4行目を次の式に変えると外から内への回転になります。

r=250/Math.pow(2,time); //Out>in

対数 log

log1.jpg
対数も自然現象を数学的に表す時によく使われます。
例:人が感じる光や音の強さ、音階など

指数関数の逆関数です。timeがゼロは無限大なので1コマだけずらしてあります。

y = Math.log ( time + 1/24 )

自然対数

自然対数:exp(0)が1なのでtimeを引数にしてもゼロによる除算が起こらないので扱いが楽です。

例:自然減衰

  • ある値を自然対数で割ると自然な減衰を表すことができます。

amp=100;
decay =3;
cycle = 2;
t=time%cycle;
v = amp/Math.exp(decay*t);
value + [v,v] //これはscaleのみ

  • この式を不透明度とスケールに書いています。
  • 結果は下のグラフです。

pulseWave.jpg