顯示具有 05160053_甘珮妤 標籤的文章。 顯示所有文章
顯示具有 05160053_甘珮妤 標籤的文章。 顯示所有文章

2018年6月4日 星期一

Week15_珮妤的筆記

TODO: Week 1: (1)WebGL
                           (2)跑OpenGL專案
             Week 2: (1)GLUT專案
                           (2)六樣東西旋轉
                           (3)Teapot 10行
              Week 3:移動 旋轉 放大縮小
                     跑Transformation.exe
              Week 4:Rotate 矩陣
              Week 5:T-R-T 特定軸
              Week 6:glm 3D模型
                             #include"glm.h"
                            GLM*pmodel=NULL;
               Week 7:小心codeblocks專案&setting-compiler
                                要設對 glm.cpp才行compile
                         working_dir 設成"."
                         libfreeglut.dll copy至專案目錄
               Week 8: 打光  陣列
               Week 10: 貼圖:OpenCV -   安裝OpenCV
                                                        -   設目錄Link
                                                        -    秀圖
                Week 11: keyboard 配 PlaySound() 變鍵盤鋼琴
                                mouse 配 PlaySound() 變射擊遊戲
                                CMP3_MCI.h可播MP3

2018年5月28日 星期一

Week14珮妤的筆記

TODO:
gluLook(eyeX,eyeY,eyeZ,
               centerX,centerY,centerZ,
               upX,upY,upZ);


TODO:

2018年5月21日 星期一

Week13 珮妤的筆記

主題:寫檔讀檔.控制關節.動作內插
TODO: File-New-Empty File
另存新檔(File-Save as) file.cpp

///先開一個沒有專案的空白檔案
#include <stdio.h>
int main()
{
    FILE * fout = fopen("output.text", "w+");///開啟檔案
    ///FILE * 檔案指標 fout
    ///     檔案file
    ///      open開啟
    ///     "要開啟的檔名", "w+"表示要寫/+檔案


    printf("Hello world\n");
    fprintf(fout, "Hello world\n");

}


TODO: 
float angle=0, angle2=10, angle3=90;
fprintf("%3f  %3f %3f",angle, angle2,angle3);

 


TODO: File-New -Project, GLUT 專案
註:用    glutMouseFunc(mouse);
             glutMotionFunc(motion);
#include <stdio.h>
FILE * fout=NULL;///檔案一開始是空的
float angle=0;
int oldX=0;
void mouse(int button, int state, int x, int y)
{

    oldX=x;
}
void motion(int x, int y)///用mouse motion來改關節angle
{
    angle += x-oldX; ///角度稍微增減
    oldX=x;///把舊的更新成新的
    if(fout==NULL){ ///一開始是空指標,所以會進來if()
        fout = fopen("output.text", "w+");
    }
    fprintf(fout, "%.3f\n", angle);///把角度印到檔案裡
    printf("%.3f\n", angle);///把角度印出來
    glutPostRedisplay();///重畫畫面

}



FILE * fin=NULL; ///in檔案一開始是空的NULL
float angle=0;
int oldX=0;
void keyboard(unsigned char key, int x, int y)///要記得main()註冊
{
    if(fin==NULL){ ///一開始是空指標所以會進來if()
        fin=fopen("output.text", "r");///r表示讀入read   
    }
    fscanf(fin, "%f", &angle);///從檔案fin讀進來
    glutPostRedisplay();///讀入資料馬上重畫
}

2018年5月14日 星期一

Week12 珮妤的筆記

TODO:複習上周PlaySound()進度

TODO:在Moodle下載CMP3_MCI.h


(1)放在專案用一目錄中
#include "CMP3_MCI.h"///雙引號在同一個目錄裡
CMP3_MCI myMP3; ///宣告一個CMP3_MCI 物件變數,叫 myMP3
int main(int argc, char *argv[])
{
    myMP3.Load("Entire.mp3");
    myMP3.Play();
}
TODO:每天早上起床的儀式

void timer(int t)///計時器的函式
{
    glutTimerFunc(2000, timer, 0);///使用計時器,下一個鬧鐘
    PlaySound("Shot.wav", NULL, SND_ASYNC);
}
glutTimerFunc(7000, timer, 0);///使用計時器第一個鬧鐘7秒

TODO:內差公式(交叉相乘)
d*新+(1-d)舊

TODO:動畫




2018年3月12日 星期一

Week03色彩點線面

畫茶壺

用滑鼠點圖案就可以知道頂點位置

移動滑鼠可以知道茶壺的座標X,Y