Aim of todays session was to create a bouncing ball.
Then the challenge was to create numerous balls. This is the code I used, numerous balls effectively appeared but then disappeared again so only one ball was visible.
float xpos;
float ypos;
float xinc;
float yinc;
int numb=10;
float [] xposar;
float[] yposar;
float[] xincar;
float [] yincar;
void setup(){
size(800,600);
xposar=new float[numb];
yposar=new float[numb];
xincar=new float[numb];
yincar=new float [numb];
xpos=random(800);
ypos=random(600);
xinc=random(-15,15);
yinc=random(-15,15);
for(int lop=0;lop<numb;lop=lop+1){
xposar[lop]=random(800);
yposar[lop]=random(600);
xincar[lop]=random(-15,15);
yincar[lop]=random(-15,15);
}
smooth();
}
void draw(){
background(255);
fill(100,100,100,80);
ellipse(xpos,ypos,10,10);
xpos=xpos+xinc;
ypos=ypos+yinc;
if(xpos>800) xinc=xinc*-1;
if(xpos<0) xinc=xinc*-1;
if(ypos>600) yinc=yinc*-1;
if(ypos<0) yinc=yinc*-1;
//now plot multiple balls
for(int lop=0;lop<numb;lop=lop+1){
ellipse(xposar[lop],yposar[lop],10,10);
xposar[lop]=xposar[lop]+xincar[lop];
yposar[lop]=yposar[lop]+yincar[lop];
}
}
Then I made the balls stay and changed the amount from 10 to 1000. It looked like this…
Then to connect all the balls together using code if(lop<numb-1)line(xposar[lop],yposar[lop],xposar[lop+1],yposar[lop+1]);
You must be logged in to post a comment.