glPolygonMode 函数

glPolygonMode 函数选择多边形光栅化模式。

语法

void WINAPI glPolygonMode(
   GLenum face,
   GLenum mode
);

parameters

该模式应用于的多边形。 对于正面多边形,必须为GL_FRONT;对于后向多边形,必须为GL_BACK;对于正面和向后多边形,必须为GL_FRONT_AND_BACK。

mode

多边形的光栅化方式。 以下模式已定义,可以在 模式下指定。 对于正面和向后多边形,默认值为GL_FILL。

含义
GL_POINT
标记为边界边缘起点的多边形顶点将绘制为点。 GL_POINT_SIZE和GL_POINT_SMOOTH等点属性控制点的光栅化。 除GL_POLYGON_MODE以外的多边形光栅化属性不起作用。
GL_LINE
多边形的边界边缘绘制为线段。 它们被视为连接线段,以便进行线路存根;线段计数器和模式不会在段之间重置 (请参阅 glLineStipple) 。 GL_LINE_WIDTH和GL_LINE_SMOOTH等线条属性控制线条的光栅化。 除GL_POLYGON_MODE以外的多边形光栅化属性不起作用。
GL_FILL
填充多边形的内部。 多边形属性(如GL_POLYGON_STIPPLE和GL_POLYGON_SMOOTH)控制多边形的光栅化。

返回值

此函数不返回值。

错误代码

glGetError 函数可以检索以下错误代码。

名称 含义
GL_INVALID_ENUM
人脸模式不是接受的值。
GL_INVALID_OPERATION
在对 glBegin 的调用和对 glEnd 的相应调用之间调用了函数。

备注

glPolygonMode 函数控制光栅化多边形的解释。 人脸参数描述适用于哪些多边形模式:正面多边形 (GL_FRONT) 、后向多边形 (GL_BACK) 或两者 (GL_FRONT_AND_BACK) 。 多边形模式仅影响多边形的最终光栅化。 具体而言,多边形的顶点被点亮,多边形在应用这些模式之前被剪裁并可能剔除。

若要绘制具有填充的后向多边形和轮廓正面多边形的图面,请调用

glPolygonMode (GL_FRONT, GL_LINE) ;

顶点标记为边界或非边界,带有边缘标志。 边缘标志在分解多边形时由 OpenGL 在内部生成,可以使用 glEdgeFlag 显式设置它们。

以下函数检索与 glPolygonMode 相关的信息:

带参数GL_POLYGON_MODE的 glGet

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl.h

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glBegin

glEdgeFlag

glEnd

glLineStipple

glLineWidth

glPointSize

glPolygonStipple