学习OpenGL(三)绘制点

来源:互联网 发布:java api接口开发 编辑:程序博客网 时间:2024/05/22 09:49

【前言】

在第一节中我们写了一个例子,绘制了一个白色的矩形在窗口中。从本节开始我们开始学习如何绘制这些几何图形。

由于任何的复杂图形都是由基本图元(点、线、面)构成,那么我们先从基本图形开始学起。

【正文】

点,对应到屏幕上是一个像素,它通过坐标确定位置。

通过调用glBegin()函数传递GL_POINTS参数,即可绘制点。

代码:

void myDisplay(){<span style="white-space:pre"></span>glClearColor(0.0, 0.0, 0.0, 0.0);glClear(GL_COLOR_BUFFER_BIT);glOrtho(0.0, 1.0, 0.0, 1.0, -1.0, 1.0);glBegin(GL_POINTS); //只绘制端点glColor3f(1.0,0.0,0.0);glVertex3f(0.25,0.25,0);glColor3f(0.0,1.0,0.0);glVertex3f(0.75,0.25,0);glColor3f(0.0,0.0,1.0);glVertex3f(0.75,0.75,0);glColor3f(1.0,1.0,1.0);glVertex3f(0.25,0.75,0);glEnd();glFlush();}

效果图:


有人说,根本就没看清点在哪里啊?

您说的确实没错,因为一个点就一个像素。如果您设置的分辨率高的话,那就更看不到了。

那么我们该如何设置点的大小呢?

下面我们继续学习。

设置点的大小我们可以使用glPointSize(GLFloat size)函数,需要传入大小值。

glPointSize(3.0); //我将大小设置为3.0再看看效果

【总结】

绘制点还是很简单的,主要要记住以下几个函数:

glVertex*();
glBegin(GL_POINTS);
glPointSize(GLFloat size);


0 0
原创粉丝点击