กันยายน 13, 2558

Lab4_birds

float cloudX=0;
float move=1;
void draw(){
  int count= -2;
  int posX, posY;
  size(500,500);
  background(#00AAFF);
  cloud();
  while(count<3){
    posX=mouseX+(count*60);
    posY=mouseY+(count*60);
    translate(posX,posY);
    strokeWeight(1.5);
    bird();
    translate(-posX,-posY);
    count++;
  }
}
void bird(){
  rotate(PI/5);
  fill(#FF0000);
  ellipse(0,-25,10,20);  //hair
  ellipse(-10,-25,10,20);
  rotate(-PI/5);
  wing();
  ellipse(0,0,50,50);    //body
  fill(#FFFF00);
  arc(0,0,50,50,PI/4,3*PI/4);
  fill(255);
  ellipse(-10,-5,15,10); //left eye
  fill(0);
  ellipse(-10,-5,5,5);
  fill(255);
  ellipse(10,-5,15,10);  //right eye
  fill(0);
  ellipse(10,-5,5,5);
  triangle(0,0,-10,10,10,10); //beak
}
void wing(){
  float roll;
  if((frameCount%50)<=25)
    roll=PI/16;
  else
    roll=-PI/16;
  rotate(roll);
  ellipse(-30,0,50,20);  //left wing
  rotate(-2*roll);
  ellipse(30,0,50,20);   //right wing
  rotate(roll);
}
void cloud(){
  noStroke();
  fill(255);
  ellipse(510-cloudX,100,100,30);
  ellipse(30+cloudX,175,120,60);
  ellipse(450-cloudX,300,75,50);
  ellipse(100+cloudX,275,85,45);
  ellipse(350-cloudX,405,215,140);
  stroke(0);
  cloudX+=move;
  if (cloudX>=450)
    move*=-1;
  else if (cloudX<=-50)
    move*=-1;
}
 

ไม่มีความคิดเห็น:

แสดงความคิดเห็น