glLineStipple(3G)glLineStipple(3G)NAMEglLineStipple - specify the line stipple pattern
SYNOPSIS
void glLineStipple(
GLint factor,
GLushort pattern );
PARAMETERS
Specifies a multiplier for each bit in the line stipple pattern. If
factor is 3, for example, each bit in the pattern is used three times
before the next bit in the pattern is used. factor is clamped to the
range [1, 256] and defaults to 1. Specifies a 16-bit integer whose bit
pattern determines which fragments of a line will be drawn when the
line is rasterized. Bit zero is used first; the default pattern is all
1's.
DESCRIPTION
Line stippling masks out certain fragments produced by rasterization;
those fragments will not be drawn. The masking is achieved by using
three parameters: the 16-bit line stipple pattern pattern, the repeat
count factor, and an integer stipple counter s.
Counter s is reset to 0 whenever glBegin() is called, and before each
line segment of a glBegin()(GL_LINES)/glEnd() sequence is generated. It
is incremented after each fragment of a unit width aliased line segment
is generated, or after each i fragments of an i width line segment are
generated. The i fragments associated with count s are masked out if
pattern bit (s / factor) mod 16
is 0, otherwise these fragments are sent to the frame buffer. Bit zero
of pattern is the least significant bit.
Antialiased lines are treated as a sequence of 1 times width rectangles
for purposes of stippling. Whether rectagle s is rasterized or not
depends on the fragment rule described for aliased lines, counting rec‐
tangles rather than groups of fragments.
To enable and disable line stippling, call glEnable() and glDisable()
with argument GL_LINE_STIPPLE. When enabled, the line stipple pattern
is applied as described above. When disabled, it is as if the pattern
were all 1's. Initially, line stippling is disabled.
ERRORS
GL_INVALID_OPERATION is generated if glLineStipple() is executed
between the execution of glBegin() and the corresponding execution of
glEnd().
ASSOCIATED GETSglGet() with argument GL_LINE_STIPPLE_PATTERN
glGet() with argument GL_LINE_STIPPLE_REPEAT
glIsEnabled() with argument GL_LINE_STIPPLE
SEE ALSOglLineWidth(3), glPolygonStipple(3)glLineStipple(3G)