float eSize = 0; //オブジェクトのサイズ(スムーズに変化させるためにfloatを使用) float eSizeTarget = 0; //オブジェクトのサイズとして目指す数値 float x = 0; //オブジェクトのx座標 float y = 0; //オブジェクトのy座標 void setup() { size(400, 400); noStroke(); //線ナシ fill(0); //塗り黒 } void draw() { background(255); // 軌跡を残す場合は、下の3行をON、backgoundをOFFにする /* fill(255, 50); //透明度のあるrectを描画 rect(0, 0, width, height); fill(0); //オブジェクトは黒 */ eSize += (eSizeTarget - eSize)/2.0; //あるべきサイズに向けて、減衰しながらサイズを変更する。 ellipse(x, y, eSize, eSize); //円を描画する。 } void mousePressed(){ x = width - mouseX; y = height - mouseY; eSize = 0; //サイズを0に設定 int distance = abs(width/2 - mouseX) + abs(height/2 - mouseY); //マウスカーソルと画面中心の距離。 eSizeTarget = distance; //あるべきサイズを距離に応じて変更。 }