头文件:
我们实用GLUT处理窗口管理操作,不需要引入gl.h和glu.h,因为GLUT保证了正确的引入。
我们可以实用 #include <GL/Glut.h>
此外,我们总引入c++程序锁需要的头文件。
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
对于新c++标准,头文件前加c eg:cstdio。
图形编程软件包的函数可分为几类:输出图元,属性,几何和建模变换,观察变换,结构操作,输入函数,
图形-结构操作和控制操作。
OpenGL系统由独立于设备的函数集(核心库),实用库GLU和实用工具包(GLUT)三部分组成。
GLUT:OpenGL实用函数工具包 提供了与任意屏幕窗口系统进行交互的函数库。以glut前缀。
GLUT是一个与其他依赖于设备的窗口系统之间的接口,我们可以实用GLUT使得程序成为与设备无关的。
实用GLUT进行显示窗口管理:
glutInit(&argc,argv); 初始化
glutCreateWindow("123");
指定显示窗口要显示什么内容:创建一个图并把图的定义传递给GLUT函数glutDisplayFunc。即将图
赋给显示窗口。
glutDisplayFunc(lineSegment); 线段描述送到显示窗。
lineSegment有了线段opengl描述程序。
glutMainLoop();最后一个 显示窗口没出现在屏幕上,需要这个函数,将所有创建的显示窗口连同
其中的图形内容被激活。
glutInitWindowPosition(50,100); 用来给显示窗口左上角的初始位置。
glutInitWindowSize(400,300);用来设定显示窗口的初始化宽度和高度的像素数。
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glFlush,该函数强制由计算机系统存放在不同的缓存中的opengl函数执行,位置依赖于
opengl的实现。 glFlush的调用将强制清空所有缓存来处理OpenGL函数。
描述图形的过程lineSegment称为一个显示回调函数。