2024年12月2日 星期一

week13 processing

 1. PImage [] img = new PImage[3];

void setup(){
  size(550,370);
  img[0] = loadImage("snail01.png");
  img[1] = loadImage("snail02.png");
  img[2] = loadImage("snail03.png");
}
int I =0;
void draw(){
  background(img[I]);
  if(frameCount%20==0) I = (I+1)%3;
}


2. void setup(){
  size(500,300);
}

void draw(){
  background(#FFFFF2);
  float x = (frameCount*5 %1000);
  if(x>500) x = 1000-x;
  for(int y=30;y<300;y+=50){
  ellipse(x,y,30,30);
  }
}

3. PImage img;
void setup(){
  size(500,300);
  img = loadImage("turkey.png");
  imageMode(CENTER);
}  
void turkey(int x, int y){
  pushMatrix();
    translate(x,y);
    rotate(radians(frameCount));
    image(img,0,0);
  popMatrix();
}
void draw(){
  background(255);
  turkey(mouseX,mouseY);
  turkey(100,100);
  turkey(400,100);
  turkey(100,200);
  turkey(400,200);
}


4. PShape gundam;
void setup(){
  size(500,500,P3D);
  gundam = loadShape("Gundam.obj");
}
void draw(){
  shape(gundam,0,0,500,500);
}


5. PShape gundam;
void setup(){
  size(500,500,P3D);
  gundam = loadShape("Gundam.obj");
}
void draw(){
  background(#BBFF81);
  pushMatrix();
    translate(mouseX,mouseY);
    rotateY(radians(frameCount));
    rotate(radians(180));
    scale(5,5,5);
  shape(gundam,0,0); //shape(gundam,mouseX,mouseY,250/2,250/2);
  popMatrix();
}


6. PShape gundam;
void setup(){
  size(500,500,P3D);
  gundam = loadShape("Gundam.obj");
}
void draw(){
  background(#BBFF81);
    drawGundam(mouseX,mouseY);
    for(int x=0;x<=500;x+=500/4){
      drawGundam(x,300);
    }
}
void drawGundam(int x, int y){
  pushMatrix();
    translate(x,y);
    rotateY(radians(frameCount));
    rotate(radians(180));
    scale(10,10,10);
  shape(gundam,0,0); //shape(gundam,mouseX,mouseY,250/2,250/2);
  popMatrix();
}


7. void setup(){
  size(300,600);
}
float x=50,y=50;
void draw(){
  background(0);
  fill(153,0,204);
  rect(x,y-25,25,25);
  rect(x+25,y,25,25);
  rect(x,y,25,25);
  rect(x,y+25,25,25);
  if(frameCount%50==0) y+=25;
}
void keyPressed(){
  if(keyCode==RIGHT) x+=25;
  if(keyCode==LEFT) x-=25;
}


8. void setup(){
  size(240,440);
}
void draw(){
  for(int i=0;i<22;i++){
    for(int j=0;j<12;j++){
      if(grid[i][j]==1) fill(119,119,119);
      if(grid[i][j]==0) fill(0);
      if(grid[i][j]==2) fill(153,0,204);
      rect(j*20,i*20,20,20);
    }
  }
}
int [][] grid = {
  {1,1,1,1,1,1,1,1,1,1,1,1},
  {1,0,0,0,0,2,0,0,0,0,0,1},
  {1,0,0,0,0,2,2,0,0,0,0,1},
  {1,0,0,0,0,2,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,1,1,1,1,1,1,1,1,1,1,1},
};


9. color [] c = {#000000, #777777, #9900CC, #CCCC00};
void setup(){
  size(240,440);
}
void draw(){
  for(int i=0;i<22;i++){
    for(int j=0;j<12;j++){
      int now = grid[i][j];
      fill(c[now]);
      rect(j*20,i*20,20,20);
    }
  }
}
int [][] grid = {
  {1,1,1,1,1,1,1,1,1,1,1,1},
  {1,0,0,0,0,2,0,0,0,0,0,1},
  {1,0,0,0,0,2,2,0,0,0,0,1},
  {1,0,0,0,0,2,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,1,1,1,1,1,1,1,1,1,1,1},
};


10.color [] c = {#000000, #777777, #9900CC, #CCCC00};
void setup(){
  size(240,440);
}
void draw(){
  for(int i=0;i<22;i++){
    for(int j=0;j<12;j++){
      int now = grid[i][j];
      fill(c[now]);
      rect(j*20,i*20,20,20);
    }
  }
  if(frameCount%50==0){
    int bad = 0;
    for(int i=20;i>=i;i--){
      for(int j=1;j<12-1;j++){
        if(grid[i][j]==2){
          if(grid[i+1][j]!=0 && grid[i+1][j]!=2) bad=1;
        }
      }
    }
    if(bad==0){
      for(int i=20;i>=i;i--){
        for(int j=1;j<12-1;j++){
          if(grid[i][j]==2){
            grid[i+1][j]=2;
            grid[i][j]=0;
          }
        }
      }
    }
  }
}
int [][] grid = {
  {1,1,1,1,1,1,1,1,1,1,1,1},
  {1,0,0,0,0,2,0,0,0,0,0,1},
  {1,0,0,0,0,2,2,0,0,0,0,1},
  {1,0,0,0,0,2,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,0,0,0,0,0,0,0,0,0,0,1},
  {1,1,1,1,1,1,1,1,1,1,1,1},
};




沒有留言:

張貼留言