本节学习画线。
绘制线的方式和绘制点的方式类似,本节主要看代码。
#include "GL/freeglut.h"
#include <math.h>
#define GL_PI 3.1416f
void RenderScene(void)
{
//clear the window use the current color
glClear(GL_COLOR_BUFFER_BIT);
GLfloat x, y, z, angle;
//
// glPushMatrix();
// glRotatef(GL_PI*3, 1.0f, 0.0f, 0.0f);
// glRotatef(GL_PI*3, 0.0f, 1.0f, 0.0f);
z = 0.0f;
glBegin(GL_LINES);
for (angle = 0.0f; angle < GL_PI; angle += (GL_PI/20.0f))
{
x = (GLfloat)50.0*sin(angle);
y = (GLfloat)50.0*cos(angle);
glVertex3f(x, y, z); //第一个终点
x = (GLfloat)50.0f*sin(angle+GL_PI);
y = (GLfloat)50.0f*cos(angle+GL_PI);
glVertex3f(x, y, z); //第二个终点
}
glEnd();
glPopMatrix();
//!!!!
//!!! 设置线段的宽
// GLfloat y;
// GLfloat fSizes[2];
// GLfloat fCurrSize;
// glGetFloatv(GL_LINE_WIDTH_RANGE, fSizes);
// fCurrSize = fSizes[0];
//获得点大小的范