第二周
先打開opengl,glut
打開GLUT程式並修改,顯示出TeaPot
程式如下
#include <GL/glut.h>///使用GLUT外掛
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
glutSolidTeapot(0.3);
glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
glutInit(&argc, argv);///(1)Init初始化GLUT
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);///(2)Init初始化 Display 的功能
glutCreateWindow("Week02 吳英昭");///(3)建立GLUT視窗
glutDisplayFunc(display);///(4)準備display()函式
glutMainLoop();///(5)主要程式
}
就變橘了
#include <GL/glut.h>///使用GLUT外掛
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
glColor3f(1,0.3,0);
glutSolidTeapot(0.3);
glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
glutInit(&argc, argv);///(1)Init初始化GLUT
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);///(2)Init初始化 Display 的功能
glutCreateWindow("Week02 吳英昭");///(3)建立GLUT視窗
glutDisplayFunc(display);///(4)準備display()函式
glutMainLoop();///(5)主要程式
}
增加彩色三角形
#include <GL/glut.h>///使用GLUT外掛
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
glBegin(GL_TRIANGLES);
glColor3f(1.0f,0.0f,0.0f); glVertex2f(0.0f,1.0f);
glColor3f(0.0f,1.0f,0.0f); glVertex2f(0.87f,-0.5f);
glColor3f(0.0f,0.0f,1.0f); glVertex2f(-0.87f,-0.5f);
glEnd();
glColor3f(1,0.3,0);
glutSolidTeapot(0.3);
glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
glutInit(&argc, argv);///(1)Init初始化GLUT
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);///(2)Init初始化 Display 的功能
glutCreateWindow("Week02 吳英昭");///(3)建立GLUT視窗
glutDisplayFunc(display);///(4)準備display()函式
glutMainLoop();///(5)主要程式
}
#include <GL/glut.h>///使用GLUT外掛
#include <math.h>///使用數學外掛
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
glBegin(GL_POLYGON);
glColor3f(1.0f,0.3f,1.0f);
for(float angle=0;angle<3.14159265358979*2;angle+=0.01){
glVertex2f(0.5*cos(angle),0.5*sin(angle));
}
glEnd();
glColor3f(1,0,0);
glutSolidTeapot(0.3);
glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
glutInit(&argc, argv);///(1)Init初始化GLUT
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);///(2)Init初始化 Display 的功能
glutCreateWindow("Week02 吳英昭");///(3)建立GLUT視窗
glutDisplayFunc(display);///(4)準備display()函式
glutMainLoop();///(5)主要程式
}
#include <GL/glut.h>///使用GLUT外掛
#include <math.h>///使用數學外掛
static void display(void)
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);///清背景
glBegin(GL_POLYGON);
glColor3f(72/255.0,90/255.0,116/255.0);
glVertex2f((102-150)/150.0,-(250-150)/150.0);
glVertex2f((216-150)/150.0,-(250-150)/150.0);
glVertex2f((192-150)/150.0,-(176-150)/150.0);
glVertex2f((133-150)/150.0,-(148-150)/150.0);
glEnd();
glColor3f(1,0,0);
///glutSolidTeapot(0.3);
glutSwapBuffers();///更新畫面
}
int main(int argc, char *argv[])///main()函式
{
glutInit(&argc, argv);///(1)Init初始化GLUT
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);///(2)Init初始化 Display 的功能
glutCreateWindow("Week02 吳英昭");///(3)建立GLUT視窗
glutDisplayFunc(display);///(4)準備display()函式
glutMainLoop();///(5)主要程式
}







沒有留言:
張貼留言