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 how polygons will be rasterized. Accepted
values are GL_POINT, GL_LINE, and GL_FILL. The
initial value 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.
NOTES
Vertices are marked as boundary or non-boundary with an edge
flag. Edge flags are generated internally by the GL when it
decomposes polygons; they can be set explicitly using
glEdgeFlag.
ERRORS
GL_INVALID_ENUM is generated if either face or mode is not
an accepted value.
GL_INVALID_OPERATION is generated if glPolygonMode is
executed between the execution of glBegin and the
corresponding execution of glEnd.
ASSOCIATED GETS
glGet with argument GL_POLYGON_MODE
SEE ALSO
glBegin,
glEdgeFlag,
glLineStipple,
glLineWidth,
glPointSize,
glPolygonStipple