欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

OpenGL画矩形函数:glRectf,四个参数分别表示了位于对角线(左下到右上)上的两个点的横纵坐标

发布时间:2025/6/17 编程问答 40 豆豆
生活随笔 收集整理的这篇文章主要介绍了 OpenGL画矩形函数:glRectf,四个参数分别表示了位于对角线(左下到右上)上的两个点的横纵坐标 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

OpenGL画矩形函数:glRectf

glRectf:画一个矩形,四个参数分别表示了位于对角线(左下到右上)上的两个点的横纵坐标(并且以窗口的中心点为原点,相当于以它为原点建立了一个二维坐标系)
例如:glRectf(-0.8f, -0.8f, 0.5f, 0.5f);

注意矩阵的对角线
左上到右下的是主对角线,左下到右上的是副对角线,这里绘制矩形时算的矩形的对角线是左下到右上的,也就是副对角线,别搞错了。

例子:

// 画矩形.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 //#include "pch.h" #include <iostream> #include<GL/glut.h> //它自动包含了<GL/gl.h>和<GL/glu.h> void myDisplay1(void) {glClearColor(0.0, 0.0, 0.0, 0.0); //将“清空颜色”设为黑色//在RGB模式下,使用glClearColor来指定“空”的颜色,它需要四个参数,其参数的意义跟//glColor4f相似。通常有RGB模式和RGBA模式,其中RGB模式有R、G、B三个分量,取值范围//为0.0~1.0;而RGBA模式有R、G、B、A四个分量,其中A即Alpha值,与透明度有关。 glClear(GL_COLOR_BUFFER_BIT);glColor3f(1.0f, 1.0f, 1.0f);glRectf(-0.8f, -0.8f, 0.5f, 0.5f);glFlush(); } int main(int argc, char* argv[]) //有命令行参数的main函数 {glutInit(&argc, argv);//固定的,必须在其他glut语句使用前调用一次,且格式固定glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); //GLUT_SINGLE表示使用单缓冲glutInitWindowPosition(100, 100);glutInitWindowSize(400, 400);glutCreateWindow("Hello World");//创建窗口,而且参数将被作为窗口的标题glutDisplayFunc(&myDisplay1);glutMainLoop();//这个函数可以显示窗口,并且等待窗口关闭后才会返回return 0; }

参数:glRectf(-0.8f, -0.8f, 0.5f, 0.5f);
运行结果:


下图为glRectf(-0.5f, -0.5f, 0.5f, 0.5f); 的运行结果:


glRectf(0.0f,0.0f, 0.2f, 0.5f) 的运行结果:

总结

以上是生活随笔为你收集整理的OpenGL画矩形函数:glRectf,四个参数分别表示了位于对角线(左下到右上)上的两个点的横纵坐标的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。