2024年2月26日 星期一

盛week02

##點、線、面、色彩 1. 下載本的範例 https://jsyeh.org/3dcg10 windows.zip 及 data.zip 2. 在下載資料夾, 把windows.zip => windows資料夾, data.zip裡面的data拉到下載\windows 資料夾裡 3. 執行 Shape.exe 便可操作今天的課本範例 4.mouse 右鍵, 在右邊可切換 點﹐線、面 5. mouse 右鍵, 在左邊可切換大的頂點、逐個色彩 6. mouse 左鍵, 在右邊可按「綠色數字」 可以改色彩 glColor3f(r,g,b) 可以改頂點座標 glVertex2f(x,y) ##要寫程式, 試試看點線面色彩 1. moodle下載 freeglut (桌面還有一份) 點開它 2. 把freeglut 用mouse drag到桌面,就裝好了 3. 把桌面\freeglut\lib\libfreeglut.a 複製成 libglut32.a 4. CodeBlocks: File-New-Project, 選GLUT專案目錄選桌面, 專案名 取 week02_glut_color_teapot 5. GLUT 要選 桌面的 freeglut 6. 執行時, 會跳出上周的程式。 我們來改程式吧!! 7. 左邊的 sources 的 main.cpp點開 把上週的10行貼上來。 第一行 可做出 安妮亞髮色 第二行 可做出 安妮亞膚色 ##要設定色彩 1. glColor3f(r,g,b); 2. 0,1,0 綠色, 1,0,0紅色 0,0,1 藍色, 1,1,0黃色 3. 可用小畫家, 來畫其他的色彩。 使用滴管來吸色, 使用「編輯色彩」來查看色彩的值。 /255.0變成有小數點的float浮點數 4. 老師以安妮亞的色彩為例, 兩個不同大小的茶壺, 用不同的色彩, 畫出兩色的效果 ## 畫三角形 1. File-New-Project, GLUT專案, week02_glut_triangle 2. 一樣, 把今天的10行貼下來, 再加上今天的第2個主角: 頂點 3. glBegin(GL_POLYGON); 4. glColor3f(r,g,b) 5. glVertex3f(x,y) 6. glEnd(); 7. 以上是期中考試的10提其中的3題, 佔30分。 8. 在真的實作時, 會有很多組 glColor3f(r,g,b); 及glVertex2f(x,y); ##用小畫家, 幫我們找到「任意形狀」的頂點座標 1.開啟小畫家, 把圖片放上去 2. 小畫家的座標裡, 左上角是0,0, 右下角是300, 300(假設圖片寬度300 高度300) 3. 關於座標, OpenGL, 預設是「正中間0,0」, 右邊是+1, 左邊是-1, 上面是+1, 下面是-1 三角形 程式碼 成果 ##用小畫家, 幫我們找到「任意形狀」的頂點座標 1. 開啟小畫家, 把圖片放上去 2. 小畫家的座標裡, 左上角是0,0, 右下角是400, 400(假設圖片寬度400, 高度40) 3. 關於座標, OpenGL 預設是「正中間0,0」, 右邊是+1, 左邊是-1, 上面是+1, 下面是-1 4. 把小畫家的 (x座標-中心點200)/200.0 變成 OpenGL的座標 口訣: 減一半、再除一半.0 5. y座標比較麻煩 -(y座標-中心點200)/200.0, 口訣: 減一半、除一半、再加負號 6. File-New-Project, GLUT專案, week02_glut_mspaint_help_draw

沒有留言:

張貼留言