2024年5月16日 星期四

week13 電腦圖學

 week13-1_glm_gundam_keyboard_angleID_mouse_motion_angle
1.安裝 freeglut
   =>下載 freeglut
   =>把檔案 freeglut 拉到桌面
   =>點進 lib 資料夾,複製 libfreeglut.a 後改名為 libglut32.a
2.安裝 OpenCV2.1
3.重開 CodeBlocks,設定 Compiler-Setting 3個設定
   => C:\OpenCV2.1\include
   => C:\OpenCV2.1\lib
   => cv210  cxcore210  highgui210
4.把上週的 week12-3 改檔名,拿來用
5.改目錄名、改.cbp名、改.cbp 的內容Title
6.修改程式碼





week13-2_FILE_fopen_fprintf_fscanf
1.把 week13-1 複製整個目錄,改目錄名,改.cbp名,改.cbp 的內容Title
2.要加 FILE 指標
3.在 motion() 裡,要加一段程式

float angle[20]={};///20個角度,都設成0
int angleID=0;///可以是角度0、角度1、角度2、...
int oldX=0, oldY=0;
#include <stdio.h>
FILE*fin=NULL;
FILE*fout=NULL;
void motion(int x, int y){///加入mouse motion對應的函式
    angle[angleID]+=y-oldY;
    oldX=x;
    oldY=y;
    glutPostRedisplay();///要重畫畫面
    if(fout==NULL) fout=fopen("angle.txt", "w+");
    for(int i=0; i<20; i++){
        printf("%.1f ", angle[i]);
        fprintf(fout, "%.1f ", angle[i]);
    }
    printf("\n");
    fprintf(fout, "\n");
}

執行程式時,用mouse motion 一邊改變角度,一邊大量產生角度值
小黑關掉後,可在目錄裡,看到 angle.txt 裡面就是剛剛印的一堆數值

小心,angle.txt 裡面要有空格,不然就錯了。
printf() 及 fprintf() 要加 "%.1f  "


畫身體







沒有留言:

張貼留言