【前言】
在第一节中我们写了一个例子,绘制了一个白色的矩形在窗口中。从本节开始我们开始学习如何绘制这些几何图形。
由于任何的复杂图形都是由基本图元(点、线、面)构成,那么我们先从基本图形开始学起。
【正文】
点,对应到屏幕上是一个像素,它通过坐标确定位置。
通过调用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);