float eSize = 20.0; //オブジェクトのサイズ float speed = 0.3; //オブジェクトのスピード float speedx = 10; float y = 200.0; //オブジェクトのy座標 float x = 0.0; float acc = 0.0; //acceleration 加速 void setup() { size(400, 400); noStroke(); //輪郭を描かない fill(0); //オブジェクトは黒 y = 200.0; } void draw() { background(255); /* 軌跡を残す場合は、下の3行をON、backgoundをOFFにする fill(255, 50); //透明度のあるrectを描画 rect(0, 0, width, height); fill(0); //オブジェクトは黒 */ ellipse(x, y, eSize, eSize); //円を描く acc += speed; //加速yxにspeedyの値を足す y = acc*acc; //y軸の動きを加減速する様に掛け合わしている x += speedx; eSize = y/2; //もし、yの値が画面の幅以上または0になったら、反射させる if (y>= height || y <= 0 ) { speed =- speed; } if (x>= width || x<= 0) { speedx =- speedx; } }