opengl-----glut相关函数的含义---简单的新手教程

代码顺序一般是

  • 放在main函数开头的设置函数
  • 创建窗口
  • { –花括号里的可以重复–
    • 创建子窗口
    • 子窗口设置
    • glutDisplayFunc和glutReshapeFunc函数
  • }
  • 创建菜单或其他操作
  • 结束

---------------------一般放在main函数开头的设置函数---------------------
glutInit(&argc, argv);
glut初始化。
glutInitDisplayMode(const string)
设定一些显示相关设置
glutInitWindowSize(int , int);
创建的窗口大小。
glutInitWindowPosition(int, int)
窗口出现的位置离屏幕边缘的距离,不是那么准确。
glutCreateWindow(string)
创建的窗口名。
glViewport(int x, int y, int width, int height)
在默认情况下,视区被设置为占据窗口的整个像素矩形,窗口大小和视区大小相同。如果希望选择一个更小的绘图区域,可以用glviewport函数实现这一变换,相当于在窗口中定义一个矩形区域,将图像映射到这个矩形中。
x,y 以像素为单位,指定了窗口的左下角位置,width,height表示视区矩形的宽度和高度,

---------------------一般放在窗口设置函数里的函数---------------------
glClearColor()
窗口的背景颜色。
gluOrtho2D(int, int, int, int)
设置窗口的2维坐标系,4个参数是最低处的设定,最高处,最左处,最右处。比如(0,100,0,100)就是窗口最低处y是0,最高处是100,最左处x是0,最右处是100.
glViewport(int x, int y, int width, int height)
也会出现在子窗口设置里,用于调整子窗口的大小

glutDisplayFunc(func)
根据func函数绘制图像

glutReshapeFunc(func)
当窗口发生改变时,调用func函数并传递给func函数两个参数—新窗口的宽和高。
func根据这两个参数来根据需要重新绘制显示的图像。

创建菜单相关

glutCreateMenu(func)
创建菜单,返回一个GLuint值,用于标识这个菜单。
此菜单会被绑定在最近创建的窗口上。
func函数统一处理各个菜单项的回调,接受一个int值(由被点击的菜单项提供),并对此做出反应。
glutAddMenuEntry(string, int)
向最近创建的一个菜单添加一个菜单项。string是此菜单项的名字,int是当它被点击时传递给func的参数。第2个参数还可以是char类型,会传递此字符的ascll码值。
glutAddSubMenu()
向最近创建的一个菜单添加一个子菜单项。
glutAttachMenu(const string)
将此菜单绑定在某一个键上,可选用GLUT_RIGHT_BUTTONGLUT_MIDDLE_BUTTONGLUT_LEFT_BUTTON

猜你喜欢

转载自blog.csdn.net/cxujie/article/details/108943751