float left=50, right=350, top=50, bottom=250; float ballX, ballY, ballDX=3, ballDY=2; float mX, mY; void draw () { //next frame scene(); action(); } void setup () { size(500,500); reset(); } void reset () { // Reset ballX= left+40; ballY= top+30; } void scene() { //// Table rectMode(CORNERS); fill( 100,200,100 ); strokeWeight(6); stroke( 100,30,0 ); rect( left, top, right, bottom ); } void action() { myball(); } void myball() { //// Check boundaries, move ball, draw it. if (ballX > right || ballX< left) ballDX= -ballDX; ballX= ballX + ballDX; ballY= ballY + ballDY; fill( 255,0,255 ); noStroke(); ellipse( ballX, ballY, 30, 30 ); }