week04-01_atan_atan2_dy_dx_cos_sin
//week04-01_atan_atan2_dy_dx_cos_sin
void setup(){
size(600,300);
}
void draw(){
background(#COFFEE);
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(#COFFEE);
for(int x = 150; x<=450; x+=300){
ellipse(x,150,100,100);
//ellipse(150+25,150,50,50);
float dx = mouseX-x,dy = mouseY-150;
float a = atan2(dy,dx);
ellipse(x+cos(a)*25, 150+sin(a)*25,50,50);
}
}
//week04-03-rotate-radians-mouseY
void setup(){
size(400,400,P3D);
}
void draw(){
background(128);
translate(width/2, height/2);
//rotateY(radians(mouseX));//上周的左右轉
rotateX(radians(-mouseY));//本周的上下轉
box(200);
}
week04-04-rotateZ
void setup(){
size(400,400,P3D);
}
void draw(){
background(128);
translate(width/2, height/2);
rotateZ(radians(mouseY));
ellipse(0,0,100,150);
}
week04-05-robot-arm-
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();
}
//week04-05a-rotateZ-translate-box
void setup(){
size(400, 400,P3D);
}
void draw(){
background(128);
translate(width/2, height/2);//移到畫面中心
// 以下2行,分別註解,排列組合觀察
rotateZ(radians(mouseX));//對z軸旋轉
translate(0, -50);//把下端,移到中心
box(10, 100, 10);//可旋轉長條
}
//week04-05b-translate-mouseX-mouseY-rotateZ-
void setup(){
size(400, 400, P3D);
}
void draw(){
background(128);
//translate(width/2, height/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 下載一張地球的圖片
//把圖檔拉到程式裏面
PImage img = loadImage("earth.jpg");
size(600, 300);
image(img, 0, 0, 600, 300);
//week04-10-earth-
//google: processing sphere texture 可找到程式
size(400, 400, P3D);
PShape earth = createShape(SPHERE, 100);
PImage img = loadImage("earth.jpg");
earth.setTexture(img);
shape(earth);
//week04-11-earth-setTexture-translate-rotate
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);
}
//week04-13-sun-setTexture-translate-rotate
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);
}
//week04-14-sun-earth-moon-setTexture
PShape sun,earth,moon;
void setup(){
size(400, 400, P3D);
sun = createShape(SPHERE,50);
PImage img = loadImage("sun.jpg");
sun.setTexture(img);
earth = createShape(SPHERE,30);
img = loadImage("earth.jpg");
earth.setTexture(img);
moon = createShape(SPHERE,10);
img = loadImage("moon.jpg");
moon.setTexture(img);
}
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();
}
















沒有留言:
張貼留言