GLPOLYGONMODE() MachTen Programmer’s Manual 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 ini-
tial 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 par-
ticular, 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 con-
nected 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 glPolygon-
Mode(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; 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 exe-
cuted between the execution of glBegin and the correspond-
ing execution of glEnd.

ASSOCIATED GETS
glGet with argument GL_POLYGON_MODE

SEE ALSO
glBegin, glEdgeFlag, glLineStipple, glLineWidth, glPoint-
Size, glPolygonStipple

MachTen 2