課堂作業1
//week10_1_postman_head_body //頭 身體 手臂 手肘 腳 size(560, 560); PImage postman = loadImage("postman.png"); PImage head = loadImage("head.png"); PImage body = loadImage("body.png"); background(#FFFFF2); image(postman, 0, 0);//基礎郵差 fill(255, 0, 255, 128);//半透明的紫色 rect(0, 0, 560, 560);//蓋上去 image(head, 0, 0);//畫頭 image(body, 0, 0);//畫身體
課堂作業2//week10_2_postman_head_body_push_trt_pop //頭 身體 手臂 手肘 腳 PImage postman, head, body; void setup() { size(560, 560); postman = loadImage("postman.png"); head = loadImage("head.png"); body = loadImage("body.png"); } void draw () { background(#FFFFF2); image(postman, 0, 0);//基礎郵差 fill(255, 0, 255, 128);//半透明的紫色 rect(0, 0, 560, 560);//蓋上去 pushMatrix(); translate(232, 200);//再放回正確位置 rotate(radians(mouseX)); translate(-232, -200);//把旋轉中心放到(0, 0) image(head, 0, 0);//畫頭 popMatrix(); image(body, 0, 0);//畫身體 }
課堂作業3//week10_3_postman_head_body_uparm1_hand1_push_trt_pop //頭 身體 手臂 手肘 腳 PImage postman, head, body, uparm1, hand1; void setup() { size(560, 560); postman = loadImage("postman.png"); head = loadImage("head.png"); body = loadImage("body.png"); uparm1 = loadImage("uparm1.png"); hand1 = loadImage("hand1.png"); } void draw () { background(#FFFFF2); image(postman, 0, 0);//基礎郵差 fill(255, 0, 255, 128);//半透明的紫色 rect(0, 0, 560, 560);//蓋上去 pushMatrix(); translate(185, 261); //rotate(radians(mouseX)); translate(-185, -261); image(uparm1, 0, 0);//上手臂 popMatrix(); pushMatrix(); translate(116, 265); rotate(radians(mouseX)); translate(-116, -265); image(hand1, 0, 0); popMatrix(); pushMatrix(); translate(232, 200);//再放回正確位置 rotate(radians(mouseX)); translate(-232, -200);//把旋轉中心放到(0, 0) image(head, 0, 0);//畫頭 popMatrix(); image(body, 0, 0);//畫身體 }
課堂作業4//week10_3_postman_head_body_uparm1_hand1_uparm2_hand2_push_trt_pop //頭 身體 手臂 手肘 腳 PImage postman, head, body, uparm1, hand1, uparm2, hand2; void setup() { size(560, 560); postman = loadImage("postman.png"); head = loadImage("head.png"); body = loadImage("body.png"); uparm1 = loadImage("uparm1.png"); hand1 = loadImage("hand1.png"); uparm2 = loadImage("uparm2.png"); hand2 = loadImage("hand2.png"); } void draw () { background(#FFFFF2); image(postman, 0, 0);//基礎郵差 fill(255, 0, 255, 128);//半透明的紫色 rect(0, 0, 560, 560);//蓋上去 pushMatrix(); translate(185, 261); //rotate(radians(mouseX)); translate(-185, -261); image(uparm1, 0, 0);//左上手臂 popMatrix(); pushMatrix(); translate(116, 265); rotate(radians(mouseX)); translate(-116, -265); image(hand1, 0, 0);//手肘 popMatrix(); pushMatrix(); translate(290, 262); //rotate(radians(mouseX)); translate(-290, -262); image(uparm2, 0, 0);//右上手臂 popMatrix(); pushMatrix(); translate(357, 259); rotate(radians(mouseX)); translate(-357, -259); image(hand2, 0, 0);//手肘 popMatrix(); pushMatrix(); translate(232, 200);//再放回正確位置 rotate(radians(mouseX)); translate(-232, -200);//把旋轉中心放到(0, 0) image(head, 0, 0);//畫頭 popMatrix(); image(body, 0, 0);//畫身體 }
課堂作業5//week10_5_postman_many_angle_ID_mouseDragged //頭 身體 手臂 手肘 腳 PImage postman, head, body, uparm1, hand1, uparm2, hand2; float [] angle = new float[20];//準備20個關節 int ID = 0;//現在要處理的關節ID void mouseDragged() { angle[ID] += mouseX - pmouseX; } void keyPressed() { if(key == '1') ID = 1;//左手臂 if(key == '2') ID = 2;//左手 if(key == '3') ID = 3;//右手臂 if(key == '4') ID = 4;//右手 if(key == '5') ID = 5; if(key == '6') ID = 6; if(key == '0') ID = 0;//頭 } void setup() { size(560, 560); postman = loadImage("postman.png"); head = loadImage("head.png"); body = loadImage("body.png"); uparm1 = loadImage("uparm1.png"); hand1 = loadImage("hand1.png"); uparm2 = loadImage("uparm2.png"); hand2 = loadImage("hand2.png"); } void draw () { background(#FFFFF2); image(postman, 0, 0);//基礎郵差 fill(255, 0, 255, 128);//半透明的紫色 rect(0, 0, 560, 560);//蓋上去 pushMatrix(); translate(185, 261); rotate(radians(angle[1])); translate(-185, -261); image(uparm1, 0, 0);//左上手臂 pushMatrix(); translate(116, 265); rotate(radians(angle[2])); translate(-116, -265); image(hand1, 0, 0);//手肘 popMatrix(); popMatrix(); pushMatrix(); translate(290, 262); rotate(radians(angle[3])); translate(-290, -262); image(uparm2, 0, 0);//右上手臂 pushMatrix(); translate(357, 259); rotate(radians(angle[4])); translate(-357, -259); image(hand2, 0, 0);//手肘 popMatrix(); popMatrix(); pushMatrix(); translate(232, 200);//再放回正確位置 rotate(radians(angle[0])); translate(-232, -200);//把旋轉中心放到(0, 0) image(head, 0, 0);//畫頭 popMatrix(); image(body, 0, 0);//畫身體 }
課堂作業6//week10_6_postman_many_angle_ID_saveStrings_loadStrings //頭 身體 手臂 手肘 腳 PImage postman, head, body, uparm1, hand1, uparm2, hand2; float [] angle = new float[20];//準備20個關節 int ID = 0;//現在要處理的關節ID void mouseDragged() { angle[ID] += mouseX - pmouseX; } void keyPressed() { if(key == '1') ID = 1;//左手臂 if(key == '2') ID = 2;//左手 if(key == '3') ID = 3;//右手臂 if(key == '4') ID = 4;//右手 if(key == '5') ID = 5; if(key == '6') ID = 6; if(key == '0') ID = 0;//頭 if(key == 's') { String now = ""; for(int i = 0; i < 20; i ++) { now += angle[i] + " "; } lines.add(now); String [] arr = new String[lines.size()];//傳統Java陣列的資料結構 lines.toArray(arr);//轉換成傳統陣列以便存檔 saveStrings("angles.txt", arr);//小寫s會存檔 } if(key == 'r')//讀入 { if(R < lines.size()) { float [] now = float(split(lines.get(R), ' ')); for(int i = 0; i < 20; i ++) angle[i] = now[i]; R = (R + 1) % lines.size(); } } } int R = 0; String [] another; ArrayList<String> lines = new ArrayList<String>(); void setup() { size(560, 560); postman = loadImage("postman.png"); head = loadImage("head.png"); body = loadImage("body.png"); uparm1 = loadImage("uparm1.png"); hand1 = loadImage("hand1.png"); uparm2 = loadImage("uparm2.png"); hand2 = loadImage("hand2.png"); } void draw () { background(#FFFFF2); image(postman, 0, 0);//基礎郵差 fill(255, 0, 255, 128);//半透明的紫色 rect(0, 0, 560, 560);//蓋上去 pushMatrix(); translate(185, 261); rotate(radians(angle[1])); translate(-185, -261); image(uparm1, 0, 0);//左上手臂 pushMatrix(); translate(116, 265); rotate(radians(angle[2])); translate(-116, -265); image(hand1, 0, 0);//手肘 popMatrix(); popMatrix(); pushMatrix(); translate(290, 262); rotate(radians(angle[3])); translate(-290, -262); image(uparm2, 0, 0);//右上手臂 pushMatrix(); translate(357, 259); rotate(radians(angle[4])); translate(-357, -259); image(hand2, 0, 0);//手肘 popMatrix(); popMatrix(); pushMatrix(); translate(232, 200);//再放回正確位置 rotate(radians(angle[0])); translate(-232, -200);//把旋轉中心放到(0, 0) image(head, 0, 0);//畫頭 popMatrix(); image(body, 0, 0);//畫身體 }






沒有留言:
張貼留言