OpenGL基础(三):三角形

    OPengl中三角形的绘制类型有:GL_TRIANGLES,GL_TRIANGLE_STRIP和GL_TRIANGLE_FAN。

GL_TRIANGLES

    每三个定点连城三角形

glPolygonMode(GL_FRONT, GL_LINE);
glBegin(GL_TRIANGLES);
	glVertex3f(10.0f, 100.0f, 0.0f);
	glVertex3f(50.0f, 50.0f, 0.0f);
	glVertex3f(60.0f, 100.0f, 0.0f); 

	glVertex3f(60.0f, 50.0f, 0.0f);
	glVertex3f(70.0f, 100.0f, 0.0f);
	glVertex3f(100.0f, 50.0f, 0.0f);
glEnd();


GL_TRIANGLE_STRIP

    三角形带,公用三角形的边形成新的三角形,节约顶点数目。

glPolygonMode(GL_FRONT, GL_LINE);
glBegin(GL_TRIANGLE_STRIP);
	glVertex3f(10.0f, 100.0f, 0.0f);
	glVertex3f(50.0f, 50.0f, 0.0f);
	glVertex3f(60.0f, 100.0f, 0.0f); 
	glVertex3f(100.0f, 50.0f, 0.0f);
glEnd();


GL_TRIANGLE_FAN

    扇形,第一个顶点是所有三角形公用的点。

glPolygonMode(GL_FRONT, GL_LINE);
	glBegin(GL_TRIANGLE_FAN);
	glVertex3f(10.0f, 100.0f, 0.0f);
	glVertex3f(50.0f, 50.0f, 0.0f);
	glVertex3f(60.0f, 100.0f, 0.0f);
	glVertex3f(30.0f, 120.0f, 0.0f);
glEnd();

    绘制三角形默认为填充,为了方便比较,启用线框模式绘制。

glPolygonMode(GL_FRONT, GL_LINE);

猜你喜欢

转载自blog.csdn.net/liyazhen2011/article/details/80792091