先下載 window&data的資料夾並且解壓縮(window要解壓縮,data直接拖移到window的資料夾裡面),點擊Shapes.exe可以試著使用滑鼠拖移改變數值
先去下載複製freegult,拖移到桌面,打開codeblocks,開啟OpenGLUT專案,複製上週的10行的程式碼,再多加一行 glColor3f(1,1,0) 就會跑出有顏色的茶壺
做出雙色的茶壺,先畫大的在畫小的
開啟小畫家滴管吸取想要的顏色查看色彩
程式碼裡glColor3f(1,1,0) 數值介於0.0-1.0之間,所以把我們吸取到的顏色 "除以255.0"
開啟新的GLUT專案,複製剛剛顏色茶壺的程式碼
把多加的程式碼刪掉改成下方程式碼:
glBegin(GL_POLYGON); (多邊形從這開始畫)
glColor3f(1,0,0); glVertex2f(0,1); (頂點為紅色)
glColor3f(0,1,0); glVertex2f(1,-0.6); (頂點為綠色)
glColor3f(0,0,1); glVertex2f(-1,-0.6); (頂點為藍色)
glEnd(); (結束畫多邊形)
執行後會出現有顏色的三角形 !!配合小畫家描出圖片的點:
找一張圖(以阿尼亞為例),圖片用400*400的大小(大小自行決定)
以頂點X軸及Y軸的數值減掉200除以200.0 (Y軸記得加負號)
用cos, sin畫出一個圓:
開啟新的GLUT專案,把以下的程式碼打上去(記得標頭檔要打#include <math.h>!!)
#include <math.h>
glBegin(GL_POLYGON);
for(float a=0;a<=3.415*2;a+=0.1){
glVertex2f(0.5*cos(a),0.5*sin(a));
}
glEnd();
執行後會出現很可愛的一個圓 !!
圓縮小,往右上角移動
畫出一個米奇的頭:
void myCircle(float x,float y,float r){
glBegin(GL_POLYGON);
for(float a=0;a<=3.415*2;a+=0.1){
glVertex2f(r*cos(a)+x,r*sin(a)+y);
}
glEnd();
myCircle(0.5,0.5,0.3);
myCircle(-0.5,0.5,0.3);
myCircle(0,-0.1,0.6);
glutSwapBuffers();
沒有留言:
張貼留言