2022年3月7日 星期一

09163051 上課筆記 week03

 1.安裝 GitHub for Windows, 開 Git Bash

   1.1 cd desktop

   1.2 git clone https://github.com/SQimAonAoSft/2022Graphics

   把之前的倉庫 clone下載


2.到 https://jsyeh.org/3dcg10/ 下載 windows.zip 開啟 shapes.exe


    2.1 解壓縮
    2.2 開啟 shapes.exe

      2.2 在 Command manipulation window 裡按右鍵 選擇 polygon 或是 triangle


    2.3 在 Screen-space view 裡按右鍵選擇 toggle color at vertices使三角形能有三定點個別的顏色


3. 今天的主題: 點,線,面,色彩
          
    3.1 glBegin(GL_POLYGON) 是開始畫.
    3.2 glColor3f(R,G,B) 是向量的顏色(RGB).
    3.3 glVertex2f(X,Y)是 頂點位置.
    3.4 glEnd() 是結束畫.

4. 複習上周的課堂作業 GLUT 要執行得裝 freeglut 跟上周 第3個步驟相同

5. 新建一個GLUT檔案 檔名week03_color

    5.1 把程式碼全刪掉,再把會用到的程式碼輸入進去,開啟程式後會出現黃色茶壺
程式碼:    
#include <GL/glut.h>
void display(){
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glColor3f(1,1,0);
    glutSolidTeapot(0.3);

    glutSwapBuffers();
}

int main(int argc, char *argv[]){
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week03的視窗");
    glutDisplayFunc(display);
    glutMainLoop();

    return 0;
}



6. 再建一個glut 檔案, 取名 week03_color_triangle 製作三角形

    6.1 把全部程式刪掉, 再輸入程式碼:
#include <GL/glut.h>
void display(){
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

    glColor3f(1,1,0);

    glBegin(GL_TRIANGLES);
        glColor3f(1.0f,0.0f,0.0f); glVertex2f(0.0f,0.02f);
        glColor3f(0.0f,1.0f,0.0f); glVertex2f(0.9f,-1.0f);
        glColor3f(0.0f,0.0f,1.0f); glVertex2f(-0.9f,-1.0f);

    glEnd();
    glutSwapBuffers();
}

int main(int argc, char *argv[]){
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    glutCreateWindow("week03的視窗");
    glutDisplayFunc(display);
    glutMainLoop();

    return 0;
}
背景改顏色可用 glClearColor(R,G,B,1);


7將程式碼上傳到github內

    7.1 把程式都放到2022graphics內
    7.2 開啟git bash cd進入倉庫內
    7.3 git status 看檔案狀況, git add . 將新增的檔案 加進倉庫的帳冊列管
    7.4 git config user.email "X@gmail.com"
          git config user.name "S=t"                     設定好email 跟名稱
    7.5 git commit -m "week03"
    7.6 git push 把檔案上傳














沒有留言:

張貼留言