glPolygonMode
NAME
glPolygonMode -- select a polygon rasterization mode
C SPECIFICATION
void glPolygonMode(GLenum face,
GLenum mode)
PARAMETERS
- face
-
Specifies the polygons that mode applies to. Must be
GL_FRONT for front-facing polygons, GL_BACK for
back-facing polygons, or GL_FRONT_AND_BACK for front- and
back-facing polygons.
- mode
-
Specifies the way polygons will be rasterized. Accepted values are
GL_POINT, GL_LINE, and GL_FILL. The default is
GL_FILL for both front- and back-facing polygons.
DESCRIPTION
glPolygonMode controls the interpretation of polygons for rasterization.
face describes which polygons mode applies to: front-facing polygons
(GL_FRONT), back-facing polygons (GL_BACK), or both
(GL_FRONT_AND_BACK). The polygon mode affects only the final
rasterization of polygons. In particular, a polygon's vertices are lit and
the polygon is clipped and possibly culled before these modes are applied.
Three modes are defined and can be specified in mode:
- GL_POINT
-
Polygon vertices that are marked as the start of a boundary edge are
drawn as points. Point attributes such as GL_POINT_SIZE and
GL_POINT_SMOOTH control the rasterization of the points.
Polygon rasterization attributes other than GL_POLYGON_MODE
have no effect.
- GL_LINE
-
Boundary edges of the polygon are drawn as line segments. They are
treated as connected line segments for line stippling; the line
stipple counter and pattern are not reset between segments (see
glLineStipple).
Line attributes such as GL_LINE_WIDTH and GL_LINE_SMOOTH
control the rasterization of the lines. Polygon rasterization
attributes other than GL_POLYGON_MODE have no effect.
- GL_FILL
-
The interior of the polygon is filled. Polygon attributes such as
GL_POLYGON_STIPPLE and GL_POLYGON_SMOOTH control
the rasterization of the polygon.
EXAMPLES
To draw a surface with filled back-facing polygons and outlined front-facing
polygons, call
glPolygonMode(GL_FRONT, GL_LINE);
NOTES
Vertices are marked as boundary or nonboundary with an edge flag. Edge
flags are generated internally by the GL when it decomposes polygons, and
they can be set explicitly using
glEdgeFlag.
ERRORS
GL_INVALID_ENUM is generated if either face or modeis
not an accepted value.
GL_INVALID_OPERATION is generated if glPolygonMode is called
between a call to glBegin and the
corresponding call to glEnd.
ASSOCIATED GETS
glGet with argument
GL_POLYGON_MODE
SEE ALSO
glBegin,
glEdgeFlag,
glLineStipple,
glLineWidth,
glPointSize,
glPolygonStipple
back to the OpenGL index page
© 1995 Uwe Behrens. All rights reserved.