2018年6月8日 星期五

Week15_黃偉愷

學期總複習

1. Week01: WebGL、OpenGL專案、GLUT專案



2. Week02: 點、線、面、色彩、茶壺
利用點線面所畫出的小白

3. Week03: 移動、轉動、縮放、矩陣 範例:Transformation.exe

4. Week04: mouse 加入、motion 加入
5. Week05: 階層轉動
6. Week06: T-R-T 轉動
7. Week07: 貼圖、地球(地圖)
8. Week08: 打光(法向量)
9. Week10: 期中考
10. Week11: 聲音 PlaySound()、音樂 CMP3_MCI.h、keyboard、working_dir(工作執行目錄)
ex:
#include "CMP3_MCI.h" // MP3 的外掛
CMP3_MCI mymp3; //宣告(物件)變數
int main(int argc, char *argv[])
{
    //PlaySound("Do.wav",NULL,SND_ASYNC | SND_LOOP);
    mymp3.Load("Spring.mp3"); //讀MP3
    mymp3.Play();// 播放

11. Week12: 3D模型
12. Week13: 擺 pose(Robot) 內插
13. Week14: 讀寫檔
ex:
FILE * fout=NULL;

FILE * fin=NULL;

void keyboard(unsigned char key, int x, int y)
{
    if(key=='0') now=0;
    if(key=='1') now=1;
    if(key=='2') now=2;
    if(key=='3') now=3;

    if(key=='s' || key=='S' || key=='w' || key=='W')
    {
        if(fout==NULL) fout=fopen("output.txt", "w+");
        for(int i=0;i<4;i++)
        {
            printf("%.3f ", angle[i]);
            fprintf(fout, "%.3f ", angle[i]);
        }
        printf("\n");
        fprintf(fout,"\n");

    }
    if(key=='r' || key=='R')
    {
        if(fin==NULL) fin=fopen("output.txt", "r");
        for(int i=0;i<4;i++)
        {
            fscanf(fin, "%f ", &angle[i]);
            printf("%.3f ", angle[i]);
        }
        printf("\n");
        glutPostRedisplay();
    }

}
14. Week15: 複習

沒有留言:

張貼留言