Week13
- 先做每周重複的前置作業
- 將上禮拜的最後一個資料夾(12-3)複製,改成week13-1_keyboard__angleID_mouse_motion_angle
- 新增
void keyboard(unsigned char key , int x ,int y){
if(key=='0') angleID = 0;
if(key=='1') angleID = 1;
if(key=='2') angleID = 2;
if(key=='3') angleID = 3;
}
void mouse(int button, int state, int x, int y){
oldX = x;
oldY = y;
}
void motion(int x, int y){
angle[angleID] += y - oldY;
oldX = x;
oldY = y;
glutPostRedisplay();
}
- 等等
- 使剛彈關節也可以轉動
- 將week13-1_keyboard__angleID_mouse_motion_angleweek複製改成week13-3_FILE_fopen_fclose_fprintf_fscanf
- 將void keyboard(unsigned char key, int x, int y)
加上 if(key=='s'){if(fout=NULL) fout = fopen("angle.txt", "w+");for(int i=0; i<20; i++){printf("%.1f ", angle[i] );}printf("\n");///產生座標
再加上if(fout==NULL) fout = fopen("angle.txt", "w+");///產生座標紀錄
加上 if(key=='s'){
if(fout==NULL) fout = fopen("angle.txt", "w+");for(int i=0; i<20; i++){printf("%.1f ", angle[i] );fprintf(fout,"%.1f", angle[i] );}///產生筆記
加上if(key=='r'){
if(fin==NULL) fin = fopen ("angle.txt", "r");
for(int i= 0; i<20; i++){
fscanf(fin, "%f", & angle[i] );
}
glutPostRedisplay();
}///重複上次動作
沒有留言:
張貼留言