文字が回転&縮小し透明から不透明になり元の位置に集まってくるようにする(回転とサイズはランダム) |
動作バージョン |
2.0 |
---|---|
Windows | ○ |
Macintosh | ○ |
解 説 | 文字がランダムに回転&縮小し透明から不透明になり元の位置に集まってくるようにするには、選択されたテキストを1文字ずつ分解します。これはconvertIntoObjects()で分解することができます。次に現時点の文字の位置を保持し開始フレームとします。透明度はopacityに値を設定します。0が完全な透明で、100が不透明になります。回転角度とサイズランダムな値を設定します。次に終了フレームに移動し、新しい座標とサイズ、不透明度、回転角度を設定します。 |
---|---|
コード | toSmall_ResizeOpacityRotation(24,8,720); // フレーム数、最大拡大サイズ、回転角度 function toSmall_ResizeOpacityRotation(lastSec,maxSize,defRot) { var objX = new Array(); var objY = new Array(); var objSX = new Array(); var objSY = new Array(); var Comp = application.currentComposition; var cx = Comp.size.x; var cy = Comp.size.y; textObj = Comp.selection[0].convertIntoObjects(); len = textObj.length; for (i=0; i<len; i++) { objX[i] = textObj[i].position.x; objY[i] = textObj[i].position.y; objSX[i] = textObj[i].size.x; objSY[i] = textObj[i].size.y; } for (i=0; i<len; i++) { textObj[i].stopwatch.position = true; textObj[i].stopwatch.size = true; textObj[i].stopwatch.opacity = true; textObj[i].stopwatch.rotation = true; textObj[i].startFrame = 0; textObj[i].currentFrame = 0; px = (Math.random() * cx * 1.5) - cx / 4; py = (Math.random() * cy * 1.5) - cy / 4; textObj[i].position.x = px; textObj[i].position.y = py; n = 1 + Math.random() * maxSize; textObj[i].size.x = objSX[i] * n; textObj[i].size.y = objSY[i] * n; textObj[i].opacity = 0; textObj[i].rotation = Math.random() * defRot; textObj[i].endFrame = lastSec; textObj[i].currentFrame = lastSec; textObj[i].position.x = objX[i]; textObj[i].position.y = objY[i]; textObj[i].size.x = objSX[i]; textObj[i].size.y = objSY[i]; textObj[i].opacity = 100; textObj[i].rotation = 0; } } |
■サンプルスクリプトをダウンロードする >>.zip |
|
■サンプルの実行結果を見る >>実行 |