Tuesday, April 03, 2012

ball_bounce

float Radius = 25;
float positionBallX = random(width);
float positionBallY = Radius;         // ball position
float ballSpeedX = 1.6, ballSpeedY = 1.5; // velocity
color ballColor = color(random(0,255),random(0,1),random(0,255),50);

void setup() {
  smooth();
  size(640,480);
}

void draw() {
  background(100);
  moveBall();
  display();

}

void moveBall() {
  
  positionBallX = positionBallX + ballSpeedX;
  positionBallY = positionBallY + ballSpeedY; 
  
  if (positionBallX > width-Radius || positionBallX < 25) {
    ballSpeedX = ballSpeedX * -1;
  } 

  if (positionBallY > height-Radius && ballSpeedY > 0 || positionBallY < 25) {
    ballSpeedY = ballSpeedY * -1;
  } 

  if (positionBallY > height-Radius) {
     positionBallY = height-Radius;         
  }
  
  if (positionBallY < Radius) {
     positionBallY = Radius;         
  }
  
  if (positionBallX > width-Radius) {
      positionBallX = width-Radius;   
  }
  if (positionBallX < Radius) {
      positionBallX = Radius;   
  }
 
  
}


void display() {
    stroke(0);
    fill(ballColor);
    ellipse(positionBallX, positionBallY,Radius*2,Radius*2);
  }

info info

submitted by: Demitchimo
views: 34


treeThis sketch has a parent
Tags: workshop

comments comment

loading loading...

 

Add a comment: