week02
今天電腦圖學使用CodeBlocks17.12,打開GLUT專案,做出圖形。
01-1
第一步:開啟GLUT project,
開完GLUT project後,成功的話按執行會跳出一堆紅色圖形。先在一開始的專案程式碼複製差不多10行左右到Notepad++,
之後再開一個新的專案,去做今天要做的多邊形。
今天的課程是做多邊形
#include <GL/glut.h>
void display()
{
glutSolidTeapot(0.3);///畫出實心的茶壺,大小是0.3
glutSwapBuffers();///請GLUT把畫面swap送到顯示的地方
}
int main(int argc, char *argv[])///特別的main函式,有很多參數
{
glutInit(&argc, argv);///把GLUT開起來
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");///要開視窗
glutDisplayFunc(display);///要顯示的對應函式
glutMainLoop();///最後用 main迴圈 壓在最後面
}
執行畫面
第二個:黃色+藍色茶壺的程式碼
#include <GL/glut.h>
void display()
{
glColor3f(0,1,1);///水藍色
glutSolidTeapot(0.5);///水藍色茶壺的大小是0.5
glColor3f(1,1,0);///黃色
glutSolidTeapot(0.3);///畫出實心的茶壺,大小是0.3
glutSwapBuffers();///請GLUT把畫面swap送到顯示的地方
}
int main(int argc, char *argv[])///特別的main函式,有很多參數
{
glutInit(&argc, argv);///把GLUT開起來
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");///要開視窗
glutDisplayFunc(display);///要顯示的對應函式
glutMainLoop();///最後用 main迴圈 壓在最後面
}
執行畫面
第三個:藍色三角形+黃色茶壺的程式碼
#include <GL/glut.h>
void display()
{
glColor3f(0,1,1);///水藍色
glBegin(GL_POLYGON);///開始畫
glVertex2f( 0, 1);///頂點Vertex
glVertex2f(-1,-1);///頂點Vertex
glVertex2f( 1,-1);///頂點Vertex
glEnd();///結束畫
glColor3f(1,1,0);///黃色
glutSolidTeapot(0.3);///畫出實心的茶壺,大小是0.3
glutSwapBuffers();///請GLUT把畫面swap送到顯示的地方
}
int main(int argc, char *argv[])///特別的main函式,有很多參數
{
glutInit(&argc, argv);///把GLUT開起來
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");///要開視窗
glutDisplayFunc(display);///要顯示的對應函式
glutMainLoop();///最後用 main迴圈 壓在最後面
}
執行畫面
第四個:色彩繽紛的三角形+黃色茶壺
#include <GL/glut.h>
void display()
{
glBegin(GL_POLYGON);///開始畫
glColor3f(1,0,0); glVertex2f( 0, 1);
glColor3f(0,1,0); glVertex2f(-1,-1);
glColor3f(0,0,1); glVertex2f( 1,-1);
glEnd();///結束畫
glColor3f(1,1,0);///黃色
glutSolidTeapot(0.3);///畫出實心的茶壺,大小是0.3
glutSwapBuffers();///請GLUT把畫面swap送到顯示的地方
}
int main(int argc, char *argv[])///特別的main函式,有很多參數
{
glutInit(&argc, argv);///把GLUT開起來
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);
glutCreateWindow("GLUT Shapes");///要開視窗
glutDisplayFunc(display);///要顯示的對應函式
glutMainLoop();///最後用 main迴圈 壓在最後面
}
02-1回家作業的示範
製作皮卡丘
03-1圓形
第三節課教的是把圓形做出來
1.開啟新的專案
2.先把從另一邊複製的程式碼貼上
利用函式myCircle(float r)來簡化程式
做出圓形
沒有留言:
張貼留言