clampという構文は「指定の数値をここからここまでに指定する」ものです。そのためこんなこともできます。
clamp(n,20,60)
これは動きを20~60まで動くように設定しています。
構文
clamp(value, limit1, limit2)
この構文には3つの要素が必要です。
- 現在の数値 = value
- 数値の下限 = limit1
- 数値の上限 = limit2
範囲外に行こうとしても範囲の最小と最大までしか動かなくなります。
例えば円を描く運動があるとします構文は位置パラメータにこんな感じ
x = thisComp.width/2 + Math.cos(time3)500; y = thisComp.height/2 + Math.sin(time3)500; [x , y]
これにclampを挟むとこんな感じです
n = clamp;
まずはclampをnに代入します
x = thisComp.width/2 + Math.cos(time3)500;
横の運動と最初の位置を中央に配置するためにthisComp.width/2で調整
y = thisComp.height/2 + Math.sin(time3)500;
縦の運動と最初の位置を中央に配置するためにthisComp.height/2で調整
[n(x,300,700),n(y,300,700)]
現在の位置nをxy共に300~700に制限
これでこんな感じになります
あとは複製してvalueAtTime
あとはシェイプレイヤーを複製してエクスプレッションを解除しvalueAtTimeを追加します。
完成
確認用のaep置いておきます。
こんな感じで範囲指定しておけばそれ以上はキーフレームがアニメーションしていても無効になるので面白いですね。エクスプレションを使って快適なAE生活を^^