week10-1_glutWireCube_myBody_myArm
貼上周的glutWireCube_myBody_myArm
Download raw file 可以下載檔案,讓中文字跑出來,github會認為中文是亂碼
void myBody(){
glPushMatrix();
glColor3f(1,0,0);///紅色
glutWireCube(0.6);///myboby()
glPopMatrix();
}
void myArm(){
glPushMatrix();
glColor3f(0,1,0);///綠色
glScalef(1,0.4,0.4);
glutWireCube(0.3);///myboby()
glPopMatrix();
}
week10-2_rotate_myArm
cobe week10-1_glutWireCube_myBody_myArm
glRotatef(angle++,0,0,1);
glutIdleFunc(display);
就可以讓物體旋轉加上旋轉
week10-3_rotate_translate_myArm
glTranslatef(0.15,0,0);///(右移)把旋轉中心,放在畫面中心
week10-4_translatef_rotate_translate_myArm
T-R-T 關節轉動
再加一個glTranslatef(0.3,0.3,0)///掛到肩上
從中間移動到右上角
week10-5_TRT_TRT_myArm
貼上week10-4程式
再多加
glPushMatrix();
glTranslatef(0.15,0,0);
glRotatef(angle++,0,0,1);
glTranslatef(0.15,0,0);
myArm();
glPopMatrix();
week10-6_left_right_myArm
glPushMatrix();
glTranslatef(-0.3,0.3,0);///掛到肩上
glRotatef(angle++,0,0,1);///旋轉
glTranslatef(-0.15,0,0);///(右移)把旋轉中心,放在畫面中心
myArm();///我的手臂
glPushMatrix();
glTranslatef(-0.15,0,0);
glRotatef(angle++,0,0,1);
glTranslatef(-0.15,0,0);
myArm();
glPopMatrix();
glPopMatrix();
加個--號讓他到左邊
week10-7_mouse_motion_angle_myArm
void motion(int x,int y){
angle = x;///加上 mouse motion
glutPostRedisplay();///告訴GLUT,貼上便利貼,問GLUT有空時,就要重劃畫面
}
把所有的angle++改成angle就不會轉動
可以利用滑鼠拖曳
week10-8_mouse_motion_angle_2_myArm
改左邊angle改成-angle就可以對齊
week10-9_PlaySound








沒有留言:
張貼留言