fglPolygonMode(3G) OpenGL Reference fglPolygonMode(3G)NAME
fglPolygonMode - select a polygon rasterization mode
FORTRAN SPECIFICATION
SUBROUTINE fglPolygonMode( INTEGER*4 face,
INTEGER*4 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
fglPolygonMode 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 fglLineStipple). 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
fglPolygonMode(GL_FRONT, GL_LINE);
Page 1
fglPolygonMode(3G) OpenGL Reference fglPolygonMode(3G)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 fglEdgeFlag.
ERRORS
GL_INVALID_ENUM is generated if either face or mode is not an accepted
value.
GL_INVALID_OPERATION is generated if fglPolygonMode is executed between
the execution of fglBegin and the corresponding execution of fglEnd.
ASSOCIATED GETS
fglGet with argument GL_POLYGON_MODE
SEE ALSO
fglBegin, fglEdgeFlag, fglLineStipple, fglLineWidth, fglPointSize,
fglPolygonStipple
Page 2