效果图
主体代码
void DrawPoints(void)
{
int i;
GLfloat x, y;
glPushMatrix();
//另一个相对的Z平移可以分离对象
glLoadIdentity();
glTranslatef(0.0, 0.0, 0.f);
//设置点大小
glPointSize(5.0f);
glBegin(GL_POINTS);
// 固定点
glColor3f(0.0f, 0.0f, 1.0f);
glVertex3f(0.0f, 0.0f, 0.0f);
glColor3f(0.0f, 1.0f, 0.0f);
glVertex3f(0.0f, 0.5f, 0.0f);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex3f(0.5f, 0.0f, 0.0f);
// 随机点
for ( i = 0; i <100 ; i++ )
{
// 设置随机数点颜色
float redValue = (float)(rand() % 255) / 255;
float greenValue = (float)(rand() % 255) / 255;
float blueValue = (float)(rand() % 255) / 255;
glColor3f(redValue, greenValue, blueValue);
x = (GLfloat)(width / 2 - rand() % width) / width * 2;
y = (GLfloat)(height / 2 - rand() % height) / height * 2;
// 设置点坐标
glVertex3f(x, y, 0.0f);
}
glEnd();
glPopMatrix();
return;
}