2025年6月8日 星期日

week04

 void setup(){

  size(600,300); 
}
void draw(){
  background(#C0FFEE); 
  ellipse(150,150,100,100);
  //ellipse(150+25,150,50,50);
  float dx = mouseX-150,dy = mouseY-150;
  float a = atan2(dy,dx);
  ellipse(150+cos(a)*25,150+sin(a)*25,50,50);
}


void setup(){
  size(600,300); 
}
void draw(){
  background(#C0FFEE);//粉青色
  for(int x=150;x<=450;x+=300){
    ellipse(x,150,100,100);//大眼睛
    float dx = mouseX-x,dy = mouseY-150;
    float a = atan2(dy,dx);//算出角度
    ellipse(x+cos(a)*25,150+sin(a)*25,50,50);
  }
}
void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  translate(width/2,height/2);
  //rotateY(radians(mouseX));//上周的左右轉
  rotateX(radians(-mouseY));//本周的上下轉
  box(200);
}

void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  translate(width/2,height/2);
  //rotateY(radians(mouseX));//上周的左右轉
  rotateZ(radians(mouseX));//本周的上下轉
  ellipse(0,0,100,150);
}

void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  translate(width/2,height/2);
  pushMatrix();
    translate(0,100);
    box(50);//台座
    pushMatrix();
      translate(0,-25);
      rotateZ(radians(mouseX));
      translate(0,-50);
      box(10,100,10);
    popMatrix();
  popMatrix();
}

void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  translate(width/2,height/2);//移到畫面中心
  
    //以下2行 分到註解 排列組合觀察
    rotateZ(radians(frameCount));//對Z軸旋轉
    //translate(0,-50);//把下端移到中心
    box(10,100,10);//可轉動的長條
}
void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  //translate(width/2,height/2);//移到畫面中心
  
    //以下2行 分到註解 排列組合觀察
    translate(mouseX,mouseY);//加這行
    rotateZ(radians(frameCount));//對Z軸旋轉
    translate(0,-50);//把下端移到中心
    box(10,100,10);//可轉動的長條
}
//week04-06-push-translate-rotate-sphere-pop
void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  pushMatrix();
    translate(mouseX,mouseY);
    rotateY(radians(frameCount));
    sphere(100);
  popMatrix();
}


//week04-07-sun-earth
void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  translate(width/2,height/2);
  sphere(50);//太陽
  rotateY(radians(frameCount));
  pushMatrix();
    translate(150,0);
    rotateY(radians(frameCount));
    sphere(30);//地球
  popMatrix();
}
//week04-08-sun-earth-moon
void setup(){
  size(400,400,P3D); 
}
void draw(){
  background(128);
  translate(width/2,height/2);
  sphere(50);//太陽
  rotateY(radians(frameCount));
  pushMatrix();
    translate(150,0);
    rotateY(radians(frameCount));
    sphere(30);//地球
    pushMatrix();
      translate(50,0);
      rotateY(radians(frameCount));
      sphere(10);//月球
    popMatrix();
  popMatrix();
}

//week04-09-earth-texture-image
//google:earth map texture 下載1張地球的圖片
//把圖檔拉到程式裡面
PImage img = loadImage("earth.jpg");
size(600,300);
image(img,0,0,600,300);

//week04-10-earth-createShape-setTexture-shape
//google:processing sphere texture 可找到程式
size(400,400,P3D);
PShape earth = createShape(SPHERE,100);
PImage img = loadImage("earth.jpg");
earth.setTexture(img);
shape(earth);
PShape earth;
void setup(){
  size(400,400,P3D);
  earth = createShape(SPHERE,100);
  PImage img = loadImage("earth.jpg");
  earth.setTexture(img);
}
void draw(){
  background(0);
  translate(width/2,height/2);
  rotateY(radians(frameCount));
  shape(earth);
}

//week04-12-moon-setTexture-translate-rotate
PShape moon;
void setup(){
  size(400,400,P3D);
  moon = createShape(SPHERE,100);
  PImage img = loadImage("moon.jpg");
  moon.setTexture(img);
}
void draw(){
  background(0);
  translate(width/2,height/2);
  rotateY(radians(frameCount));
  shape(moon);
}
PShape sun;
void setup(){
  size(400,400,P3D);
  sun = createShape(SPHERE,100);
  PImage img = loadImage("sun.jpg");
  sun.setTexture(img);
}
void draw(){
  background(0);
  translate(width/2,height/2);
  rotateY(radians(frameCount));
  shape(sun);
}
PShape sun,earth,moon;
//樓下剪貼自 week04-08 樓上是 week04-11,12,13
void setup(){
  size(400,400,P3D); 
  earth = createShape(SPHERE,30);
  PImage img = loadImage("earth.jpg");
  earth.setTexture(img);
  
  moon = createShape(SPHERE,10);
  img = loadImage("moon.jpg");
  moon.setTexture(img);
  
  sun = createShape(SPHERE,50);
  img = loadImage("sun.jpg");
  sun.setTexture(img);
}
void draw(){
  background(128);
  translate(width/2,height/2);
  shape(sun);//太陽
  rotateY(radians(frameCount));
  pushMatrix();
    translate(150,0);
    rotateY(radians(frameCount));
    shape(earth);//地球
    pushMatrix();
      translate(50,0);
      rotateY(radians(frameCount));
      shape(moon);//月球
    popMatrix();
  popMatrix();
}














沒有留言:

張貼留言