「どきどき」
動揺する,興奮するなど日常より高ぶった状態をよくこのように表現します.この「どきどき」を実際にプログラミングしてみましょう.
まず,この どきどき を成分分析します.これは主観によりますが,私は,このどきどきを心臓の動き,すなわち
ある一定の大きさの物体が数秒間隔で大きくなり,元の大きさに戻るもの
と考えました.では,これをプログラミングしてみましょう.
ソースコードはこうなります.
point size, center; |
実行結果はこうなります.
まず
point size, center;
で基準になる点 center とそこでの大きさを表す点sizeを準備し,それをsetup内の
size = new point(50, 50);
center = new point(200, 200);
によって初期化しています.sizeは物体の大きさを表すもので初期値として半径50で,その物体の位置はcenterで(200, 200)で初期化されています.
また,物体を実際に絵としてみせるためpaint内で
clearAll();
fillOval(center, size.x, size.y);
として,center を中心とした大きさがsizeの円を描いています.この段階で,点を準備してそれを描画するということはできました.
次は動きの記述です.
動きは「一定の大きさの物体が」,「数秒間隔で大きくなる」
と定義しました.
この「一定の大きさの物体が」がalwaysの部分であり,「数秒間隔で大きくなる」がintervalに対応します.詳細には,
「いつも同じ大きさに向かって力を加えながら」を「1.5秒単位で(1000,1000)の大きさに押す」としました.
[always]のsize.pushTo(50, 50);でいつもsizeを(50, 50)へ押しています.
[interval, 1.5]のsize.pushTo(1000, 1000);で1.5秒毎にsizeを(1000, 1000)へ押しています.
つまり,いつも(50, 50)という大きさになろうとするけど,1.5秒ごとに(1000, 1000)という外向きの大きな力が加わる.ということで「どきどき」を表現しています.
このようにして,「ある一定の大きさの物体が数秒間隔で大きくなり,元の大きさに戻るもの」すなわち「どきどき」をプログラミングしました.