2022年3月1日 星期二

Ru的電腦圖學筆記>



Step01-1 跑別人的範例

1.到 https://jsyeh.org/3dcg10 下載範例檔案 data.zip、windows.zip、glut32.dll


2. windows.zip => 解壓縮至 windows =>下載/windows/Shapes.exe

    data.zip => 解壓縮至此 => 下載/丟進去 windows 的資料夾/data/模型

    glut32.dll => 複製 =>下載/丟進去 windows 的資料夾/glut32.dll

3.跑 Shape.exe 看範例試試看

    左邊按右鍵選單:大頂點、很多顏色

    右邊按右鍵選單:POIN......POLYGON



Step01-2 跑上週的範例

1.安裝 Git for windows

2.Git Bash:

    -cd desktop

    -git clone https://github.com/MCUYeeZhiHua/2022graphics1

    -cd 2022graphics1

3.安裝 freeglut 解壓縮至桌面

    -freeglut 裡的 lib 裡面的 libfreeglut.a 複製並改成libgult32.a

4.Codeblocks/File/Open/桌面/2022graphics1/Week01_GLUT 

Step02-1親手打造GLUT的程式

1.新增一個新的 GLUT 檔案

    -檔名:week02_color ,儲存至桌面

2.把 main.cpp 裡面的程式碼全部刪掉,重新打:

#include <GL/glut.h>
void display()
{
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glColor3d(1,1,0);
    glutSolidTeapot(0.3);
    glutSwapBuffers();
}
int main(int argc, char** argv)
{
    glutInit( &argc, argv );
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH );
    glutCreateWindow("第02週的程式哦!");
    glutDisplayFunc(display);
    glutMainLoop();
}

3.按執行會出現茶壺的圖案ヽ(✿゚▽゚)ノ



Step03-1彩色三角形
1.把 glutSolidTeapot(0.3); 這一行刪除
2.再將程式碼改成:
#include <GL/glut.h>
void display()
{
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glColor3f(1,1,0);
    ///glutSolidTeapot(0.3);
    glBegin(GL_POLYGON);
        glColor3f(1,0,0);
        glVertex2f(-1, -1);

        glColor3f(0,1,0);
        glVertex2f(+1, -1);

        glColor3f(0,0,1);
        glVertex2f(0, +1);
    glEnd();
    glutSwapBuffers();
}

int main(int argc, char** argv)
{
    glutInit( &argc, argv );
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH );
    glutCreateWindow("第02週的程式哦!");
    glutDisplayFunc(display);
    glutMainLoop();
}
3.按執行會出現紅藍綠的三角形(๑¯◡¯๑)


Step03-2上傳到 Github
1.把 README.md 說明檔,利用 Markdown MD語法編輯
    -# 一個井號,表示大標題
    -## 二個井號,表示小標題
    -```C++會秀出C++的程式
    -直接在 GitHub 上,登入後, 按 "筆" 修改
    -再按綠色的 Commit 確認你的修改
2.傳送上雲端
    -開啟 Git Bash
    -cd desktop 
    -git clone https://github.com/MCUYeeZhiHua/2022graphics1
    -cd 2022graphics1
    -把檔案加入桌面 2022graphics 的資料夾
    -git status
    -git add .
    -git status

    -git config --global user.email "09160501@me.mcu.edu.tw"
    -git config --global user.name "MCUYeeZhiHua"
    -git commit -m"add week01"
    -git push 推送上雲端 (預設瀏覽器要登入才行)


完成!💗💗💗💗💗💗💗

古利夏醫生的艾爾迪亞日記week02

1. 下載範例 https://jsyeh.org/3dcg10
   data.zip windows.zip glut32.dll

 









2.windows.zip =解壓=> 下載\windows\Shapes.exe

   data.zip =解壓=> 下載\windows\data\模型

   glut32.dll =複製=> 下載\windows\glut32.dll

3. 跑 Shapes.exe 看範例, 試試看

   左可按右鍵選單: 大頂點、很多顏色

   右可按右鍵選單: POINT....POLYGON 













step01-2 跑你上週的程式
1. 上週的安裝 Git for Windows
2. 上週的 Git Bash: cd desktop, git clone https://github.com/MCUihavebigdick/graphics,graphics

(設定你的網路品牌) 超熱血的圖學筆記 Week02

自己打的筆記 (事後可以再修改)  (要自己的截圖, 不能偷老師的圖)

step01-1 跑別人的範例


1. 下載範例 https://jsyeh.org/3dcg10
   data.zip windows.zip glut32.dll
2. windows.zip =解壓=> 下載\windows\Shapes.exe
   data.zip =解壓=> 下載\windows\data\模型
   glut32.dll =複製=> 下載\windows\glut32.dll
3. 跑 Shapes.exe 看範例, 試試看
   左可按右鍵選單: 大頂點、很多顏色
   右可按右鍵選單: POINT....POLYGON 



step01-2 跑你上週的程式


1. 上週的安裝 Git for Windows
2. 上週的 Git Bash: cd desktop, git clone 你的網址
   cd 2022graphics1
3. 上週的安裝 freeglut, 記得改檔名 lib\libglut32.a
4. 在 CodeBlocks File-Open week01_GLUT專案,跑!

step02-1 親手打造 GLUT的程式 (5-10行)


有了上週的 week01_GLUT 的專案
我們要寫出今天的 week02_color 新專案
1. File-New-Project,選GLUT專案
2. 設好freeglut後
3. 確定有上週的進度後, 大膽的把上週的程式刪掉
4. 寫下今天的10行程式碼,會秀出黃色的茶壼

///step02-1 10行最精簡的 GLUT程式
///先全刪, 目標: 5-10行,寫完
#include <GL/glut.h> ///使用GLUT外掛,簡化程式

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) ///main()主函式 進階版
{
    glutInit( &argc, argv); ///把參數,送給 glutInit 初始化
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH ); ///雙緩衡區 + 3D深度功能
    glutCreateWindow("第02週的程式哦!"); ///開 GLUT 視窗

    glutDisplayFunc(display); ///用來顯示的函式

    glutMainLoop(); ///主要的程式迴圈
}

step03-1 彩色三角形

接上一節的進度(黃色茶壼),我們想把今天的範例(彩色三角形)跑出來, 所以修改一下,將 glutSolidTeapot(0.3) 改成 glBegin(GL_POLYGON) ... glEnd() 在中間則用 glColor3f()及glVertex2()來標定色彩、頂點座標

///step02-1 10行最精簡的 GLUT程式
///先全刪, 目標: 5-10行,寫完
#include <GL/glut.h> ///使用GLUT外掛,簡化程式

void display()
{
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );///畫圖前, 先清畫面

    glColor3f(1,1,0); ///設定色彩
    ///glutSolidTeapot(0.3); ///實心的茶壼
    glBegin(GL_POLYGON);
        glColor3f(1,0,0);///紅色
        glVertex2f(-1, -1);

        glColor3f(0,1,0);///綠色
        glVertex2f(+1, -1);

        glColor3f(0,0,1);///藍色
        glVertex2f(0, +1);
    glEnd();

    glutSwapBuffers();///畫好後,交換出來
}

int main(int argc, char** argv) ///main()主函式 進階版
{
    glutInit( &argc, argv); ///把參數,送給 glutInit 初始化
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH ); ///雙緩衡區 + 3D深度功能
    glutCreateWindow("第02週的彩色三角形哦!"); ///開 GLUT 視窗

    glutDisplayFunc(display); ///用來顯示的函式

    glutMainLoop(); ///主要的程式迴圈
}

step03-2 更新你的 GitHub

今天的程式寫完了,接下來便是將 今天的程式推送上雲端, 再修改 README.md 讓它能更清楚囉。

1. 利用上週教的 Git 指令, 將今天的程式推送上雲端
2. 把 README.md 說明檔,利用 Markdown MD語法編輯

# 一個井號,表示大標題
## 二個井號,表示小標題

```C++
會秀出C++的程式
 英文的 1234的左邊的撇

```

直接在 GitHub 上,登入後, 按 "筆" 修改

再按綠色的 Commit 確認你的修改


一定是大拇指的啦

STEP 1 : 下載範例

 1. 下載範例: https://jsyeh.org/3dcg10

    => data.zip  ,  windows.zip ,  glut32.dll 


2. windows.zip  =壓縮=>  下載/windows/Shapes.exe
   data.zip =壓縮=> 下載windows/data
   glut32.dll ==> 下載/windows/glut32.dll
   下載完後將 data 放入 windows 資料夾

3. 跑Shape.exe 看範例
    

3.1 左邊視窗右鍵 : 大頂點 , 調顏色

3.2 右邊視窗右鍵 : POINT ..... POLYGON


STEP 2 : 開啟上周的程式


1.1 在moodle下載 Git for Windows

1.2 下載freeglut.zip 並解壓縮至桌面

1.3 桌面 freeglut 的 lib 裡面有 libfreeglut.a 把它複製貼上並改成 libglut32.a
 

2.開啟 git bash  複製github內2022graphics資料夾


3.開啟 week01_GLUT 



STEP 3 : 製作茶壺

1.開啟新 GLUT 專案 命名 week02_GLUT_Color

2. 先與week01_GLUT作對比
      再將內容全部刪除 重寫一個新的簡短程式碼

#include <GL/glut.h>///使用glut的外掛
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) ///main主函式進階版
{
    glutInit( &argc , argv);///把參數送給glut初始化
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH ); ///雙緩衝區 + 3D深度功能
    glutCreateWindow("第02周的程式哦!");///開啟glut視窗

    glutDisplayFunc(display);///用來顯示的函示

    glutMainLoop();///主要的程式迴圈
}


3. 最後執行的圖案是一個實心的茶壺!!




STEP 4 : 製作三角形

1. 延續茶壺的程式碼,將製作的茶壺單行程式碼
刪除  (  glutSolidTeapot(0.3);  )

2. 打上新程式碼做三角形

#include <GL/glut.h>///使用glut的外掛
void display()
{
    glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
    glColor3f(1,1,0);///設定色彩
    glBegin( GL_POLYGON );///開始
        glColor3f(1,0,0);///紅色
        glVertex2f(-1,-1);/// vertex : 頂點

        glColor3f(0,1,0);///綠色
        glVertex2f(+1,-1);

        glColor3f(0,0,1);///藍色
        glVertex2f(0,+1);
    glEnd();///結束

    glutSwapBuffers();///畫好後交換出來
}
int main(int argc , char** argv) ///main主函式進階版
{
    glutInit( &argc , argv);///把參數送給glut初始化
    glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH ); ///雙緩衝區 + 3D深度功能
    glutCreateWindow("第02周的程式哦!");///開啟glut視窗

    glutDisplayFunc(display);///用來顯示的函示

    glutMainLoop();///主要的程式迴圈
}


3. 最後執行是一個三角形的圖案!!





   


    









week01

 一.OPENGL

1.安裝CodeBlocks 17.12 mingw

2.File-New-Project, 選 OpenGL 專案

3.儲存位置選擇桌面,按next

4.Build and run


二.Glut專案
1.去Moodle的上課用軟體裡下載Freeglut.zip並解壓縮

2.將裡面的檔案libfreeglut.a改成libglut32.a

3.Codeblocks-File-New-Project 選 glut專案

4.設定GLUT目錄 C:\Users\Desktop\freeglut
5.build and run






week02電腦圖學

week02

1. 至https://jsyeh.org/3dcg10     

    下載3個檔案   data.zip windows.zip glut32.dll










2. windows.zip 解壓縮 > 下載 \ windows \ Shapes .exe
    data.zip 解壓縮>下載 \ windows \ data \ 模型
    glut32.d11 解壓縮 > 下載 \ windows \ glut32.d11

3. 執行Shapes.exe 看範例,試試看

   左可按右鍵選單: 大頂點、很多顏色

   右可按右鍵選單: POINT....POLYGON 












跑上週的程式

1.安裝 Git for Windows
2. 開啟 Git Bash: cd desktop, git clone 你的網址 cd 2022graphics1
3. 下載 freeglut, 記得改檔名 lib\libglut32.a
4.開啟 CodeBlocks  > File > Open > week01_GLUT專案, run & bulid  

第一個GLUT程式
1.建立 GLUT 檔案取名 week02_color














#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("第二週的程式");

    glutDisplayFunc(display);

    glutMainLoop();
}

彩色三角形














#include <GL/glut.h> ///使用GLUT外掛簡化程式

    void display ()
    {
        glClear( GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );
        glColor3f(1,1,0);///設定色彩
        glBegin(GL_POLYGON);
            glColor3f(1,1,0);///紅色
            glVertex2f(-1,-1);

            glColor3f(0,1,0);///綠色
            glVertex2f(+1,-1);

            glColor3f(0,0,1);///綠色
            glVertex2f(0,+1);
            glEnd();
        glutSwapBuffers();///畫好後,交換出來
    }

    int main (int argc,char** argv)///main()主函式 進階版
    {
        glutInit( &argc,argv);///把參數,送給glutInit 初始化
        glutInitDisplayMode( GLUT_DOUBLE | GLUT_DEPTH);///雙緩衝區+3D深度功能
        glutCreateWindow("第二周的程式!");///開GLUT視窗

        glutDisplayFunc(display);///用來顯示的函式
        glutMainLoop();///主要的程式迴圈
    }


2022年2月22日 星期二

week01

 week01

下載軟體





1.File > New > Project, 選 OpenGL 專案









2.先按... 選擇專案儲存的地方,路徑選桌面



3. 按兩次下一步後完成建立專案  , 按Bulid&Run , 就可以看到彩色旋轉的三角形











GLUT專案

1.moodle下載freeglut壓縮檔,並解壓縮

2.將桌面目錄freeglut中lib的資料夾新增一個libglut32.a的檔案










3.建立一個GLUT  Project




4.按Build&Run,按+ - 可以調整精細程度












將檔案上傳至GitHub

1.開啟 Git Bash 

2..cd desktop 進入桌面  

3.git clone https://github.com/ray/2022graphics1   

4.cd 2022graphics1   

5.將兩個目錄放進2022graphics1

5.git status 看狀態

6.加 git add   

7.git status 再看狀態

推送上雲端

1.git commit  

2.git config -- global user.email "09160986@me.mcu.edu.tw"

3.git config --global user.name "ray"(第一次使用時)

4.git commit -m

git push(送上雲端) 



VERY BEAUTIFUL, VERY POWERFUL

一.     一樣先安裝且設定好freeglut,OpecCV, 開啟CodeBlocks建立新專案 week11_gundam,                 把 MyGundam.zip下載解壓縮後的data資料夾放到freeglut/bin裡面 把week09_openc...