GLLINESTIPPLE(3G) GLLINESTIPPLE(3G)
NAME
glLineStipple - specify the line stipple pattern
C SPECIFICATION
void glLineStipple( GLint factor,
GLushort pattern )
PARAMETERS
factor Specifies a multiplier for each bit in the line stipple pattern. If factor is 3, for exam-ple, example,
ple, 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.
pattern 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 glBegin(GL_LINES)/glEnd
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 sig-nificant significant
nificant bit.
Antialiased lines are treated as a sequence of 1 * width rectangles for purposes of stippling.
Whether rectagle s is rasterized or not depends on the fragment rule described for aliased lines,
counting rectangles 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 GETS
glGet with argument GL_LINE_STIPPLE_PATTERN
glGet with argument GL_LINE_STIPPLE_REPEAT
glIsEnabled with argument GL_LINE_STIPPLE
SEE ALSO
glLineWidth(3G), glPolygonStipple(3G)
GLLINESTIPPLE(3G)
|