//week09-1-gundam-head-body
PShape body,head;
void setup(){
size(400,400,P3D);
body=loadShape("body.obj");
head=loadShape("head.obj");
}
void draw(){
background(204);
translate(200,300);
sphere(10); //原點的球
scale(10,-10,10); //y要上下再反過來
shape(body,0,0);
shape(head,0,0);
}PShape body,head;
void setup(){
size(400,400,P3D);
body=loadShape("body.obj");
head=loadShape("head.obj");
}
void draw(){
background(204);
translate(200,300);
sphere(10);
scale(10,-10,10);
shape(body,0,0);
pushMatrix();
translate(0,22.5);
rotateY(radians(mouseX-200));
rotateX(radians(mouseY-60));
translate(0,-22.5);
shape(head,0,0);
popMatrix();
}
//week09-1-gundam-head-body
PShape body,head;
void setup(){
size(400,400,P3D);
body=loadShape("body.obj");
head=loadShape("head.obj");
}
void draw(){
background(204);
translate(200,300);
sphere(10); //原點的球
scale(10,-10,10); //y要上下再反過來
shape(body,0,0);
shape(head,0,0);
}PShape body,head; void setup(){ size(400,400,P3D); body=loadShape("body.obj"); head=loadShape("head.obj"); } void draw(){ background(204); translate(200,300); sphere(10); scale(10,-10,10); shape(body,0,0); pushMatrix(); translate(0,22.5); rotateY(radians(mouseX-200)); rotateX(radians(mouseY-60)); translate(0,-22.5); shape(head,0,0); popMatrix(); }
//week09-3_gundam_uparm_upuparm
PShape uparm1, upuparm1;void setup(){ size(400,400,P3D); uparm1 = loadShape("uparm1.obj"); upuparm1 = loadShape("upuparm1.obj");}void draw(){ background(204); translate(200, 300); sphere(3); //圓點 小一點較清楚 scale(10, -10, 10); shape(upuparm1, 0, 0); //上上手臂 pushMatrix(); translate(-4.1, 19.9); //掛回原本位置 rotateX(radians(mouseY)); translate(4.1, -19.9);//把物體的旋轉值,放到座標中心 //translate(mouseX/10.0, -mouseY/10.0); //一邊移動、一邊找到數值 //println(mouseX/10.0, -mouseY/10.0); //印出適合的數值 ex.. 4.1 -19.9 shape(uparm1, 0, 0); //上手臂 popMatrix();}
//week09-4_gundam_uparm_upuparm_hand_push_trt_pop
PShape uparm1,upuparm1,hand1;
void setup(){
size(400,400,P3D);
uparm1=loadShape("uparm1.obj");
upuparm1=loadShape("upuparm1.obj");
hand1=loadShape("hand1.obj");
}
void draw(){
background(204);
translate(200,300);
sphere(3);
scale(10,-10,10);
shape(upuparm1,0,0);
pushMatrix();
translate(-4.1,19.9);
rotateZ(radians(mouseX));
translate(4.1,-19.9);
/*
translate(mouseX/10.0,-mouseY/10.0);//移動找到數值
println(mouseX/10.0,-mouseY/10.0);//印出數值 4.1,-19.9
*/
shape(uparm1,0,0);
pushMatrix();
translate(-4.5,16.9);
rotateX(radians(mouseX));
translate(4.5,-16.9);
//translate(mouseX/10.0,-mouseY/10.0);
//println(mouseX/10.0,-mouseY/10.0);
shape(hand1,0,0);
popMatrix();
popMatrix();
}
//week09_5_gundam_uparm_upuparm_hand_keyboard_mouse_anglePShape uparm1, upuparm1, hand1;void setup(){ size(400,400,P3D); uparm1 = loadShape("uparm1.obj"); upuparm1 = loadShape("upuparm1.obj"); hand1 = loadShape("hand1.obj"); }float [] angle = new float[20]; //準備20個關節int ID = 0; //關節的代碼 之後會用到 angle[ID] 來改變值void keyPressed(){ if(key=='1') ID = 1; if(key=='2') ID = 2;}void mouseDragged(){ angle[ID] += mouseX - pmouseX; //X方向的移動,可改變某個關節角度}void draw(){ background(204); translate(200, 300); sphere(3); //圓點 小一點, 比較清楚 scale(10, -10, 10); shape(upuparm1, 0, 0); //上上手臂 pushMatrix(); translate(-4.1, 19.9); //再掛回去原本的位置 rotateZ(radians(angle[1])); //按下鍵盤1 滑鼠按著可以移動關節 translate(4.1, -19.9);//把物體的旋轉值,放到座標中心 shape(uparm1, 0, 0); //上手臂 pushMatrix(); translate(-4.5, 16.9); rotateX(radians(angle[2]));//按下鍵盤2 滑鼠按著可以移動關節 translate(4.5, -16.9); //剛剛把手移到座標中心的移動量 //translate(mouseX/10.0, -mouseY/10.0); //一邊移動、一邊找到數值 //println(mouseX/10.0, -mouseY/10.0); //印出適合的數值 ex.. 4.5 -16.9 shape(hand1,0,0); popMatrix(); popMatrix();}
PShape uparm1, upuparm1;void setup(){size(400,400,P3D);uparm1 = loadShape("uparm1.obj");upuparm1 = loadShape("upuparm1.obj");}void draw(){background(204);translate(200, 300);sphere(3); //圓點 小一點較清楚scale(10, -10, 10);shape(upuparm1, 0, 0); //上上手臂pushMatrix();translate(-4.1, 19.9); //掛回原本位置rotateX(radians(mouseY));translate(4.1, -19.9);//把物體的旋轉值,放到座標中心//translate(mouseX/10.0, -mouseY/10.0); //一邊移動、一邊找到數值//println(mouseX/10.0, -mouseY/10.0); //印出適合的數值 ex.. 4.1 -19.9shape(uparm1, 0, 0); //上手臂popMatrix();}//week09-4_gundam_uparm_upuparm_hand_push_trt_popPShape uparm1,upuparm1,hand1; void setup(){ size(400,400,P3D); uparm1=loadShape("uparm1.obj"); upuparm1=loadShape("upuparm1.obj"); hand1=loadShape("hand1.obj"); } void draw(){ background(204); translate(200,300); sphere(3); scale(10,-10,10); shape(upuparm1,0,0); pushMatrix(); translate(-4.1,19.9); rotateZ(radians(mouseX)); translate(4.1,-19.9); /* translate(mouseX/10.0,-mouseY/10.0);//移動找到數值 println(mouseX/10.0,-mouseY/10.0);//印出數值 4.1,-19.9 */ shape(uparm1,0,0); pushMatrix(); translate(-4.5,16.9); rotateX(radians(mouseX)); translate(4.5,-16.9); //translate(mouseX/10.0,-mouseY/10.0); //println(mouseX/10.0,-mouseY/10.0); shape(hand1,0,0); popMatrix(); popMatrix(); }//week09_5_gundam_uparm_upuparm_hand_keyboard_mouse_anglePShape uparm1, upuparm1, hand1;void setup(){size(400,400,P3D);uparm1 = loadShape("uparm1.obj");upuparm1 = loadShape("upuparm1.obj");hand1 = loadShape("hand1.obj");}float [] angle = new float[20]; //準備20個關節int ID = 0; //關節的代碼 之後會用到 angle[ID] 來改變值void keyPressed(){if(key=='1') ID = 1;if(key=='2') ID = 2;}void mouseDragged(){angle[ID] += mouseX - pmouseX; //X方向的移動,可改變某個關節角度}void draw(){background(204);translate(200, 300);sphere(3); //圓點 小一點, 比較清楚scale(10, -10, 10);shape(upuparm1, 0, 0); //上上手臂pushMatrix();translate(-4.1, 19.9); //再掛回去原本的位置rotateZ(radians(angle[1])); //按下鍵盤1 滑鼠按著可以移動關節translate(4.1, -19.9);//把物體的旋轉值,放到座標中心shape(uparm1, 0, 0); //上手臂pushMatrix();translate(-4.5, 16.9);rotateX(radians(angle[2]));//按下鍵盤2 滑鼠按著可以移動關節translate(4.5, -16.9); //剛剛把手移到座標中心的移動量//translate(mouseX/10.0, -mouseY/10.0); //一邊移動、一邊找到數值//println(mouseX/10.0, -mouseY/10.0); //印出適合的數值 ex.. 4.5 -16.9shape(hand1,0,0);popMatrix();popMatrix();}
沒有留言:
張貼留言