fglLineWidth(3G) OpenGL Reference fglLineWidth(3G)NAME
fglLineWidth - specify the width of rasterized lines
FORTRAN SPECIFICATION
SUBROUTINE fglLineWidth( REAL*4 width )
PARAMETERS
width Specifies the width of rasterized lines. The initial value is 1.
DESCRIPTION
fglLineWidth specifies the rasterized width of both aliased and
antialiased lines. Using a line width other than 1 has different
effects, depending on whether line antialiasing is enabled. To enable
and disable line antialiasing, call fglEnable and fglDisable with
argument GL_LINE_SMOOTH. Line antialiasing is initially disabled.
If line antialiasing is disabled, the actual width is determined by
rounding the supplied width to the nearest integer. (If the rounding
results in the value 0, it is as if the line width were 1.) If
|Wx| > |Wy|, i pixels are filled in each column that is rasterized, where
i is the rounded value of width. Otherwise, i pixels are filled in each
row that is rasterized.
If antialiasing is enabled, line rasterization produces a fragment for
each pixel square that intersects the region lying within the rectangle
having width equal to the current line width, length equal to the actual
length of the line, and centered on the mathematical line segment. The
coverage value for each fragment is the window coordinate area of the
intersection of the rectangular region with the corresponding pixel
square. This value is saved and used in the final rasterization step.
Not all widths can be supported when line antialiasing is enabled. If an
unsupported width is requested, the nearest supported width is used.
Only width 1 is guaranteed to be supported; others depend on the
implementation. Likewise, there is a range for aliased line widths as
well. To query the range of supported widths and the size difference
between supported widths within the range, call fglGet with arguments
GL_ALIASED_LINE_WIDTH_RANGE, GL_SMOOTH_LINE_WIDTH_RANGE,
GL_SMOOTH_LINE_WIDTH_GRANULARITY.
NOTES
The line width specified by fglLineWidth is always returned when
GL_LINE_WIDTH is queried. Clamping and rounding for aliased and
antialiased lines have no effect on the specified value.
Nonantialiased line width may be clamped to an implementation-dependent
maximum. Call fglGet with GL_ALIASED_LINE_WIDTH_RANGE to determine the
maximum width.
Page 1
fglLineWidth(3G) OpenGL Reference fglLineWidth(3G)ERRORS
GL_INVALID_VALUE is generated if width is less than or equal to 0.
GL_INVALID_OPERATION is generated if fglLineWidth is executed between the
execution of fglBegin and the corresponding execution of fglEnd.
ASSOCIATED GETS
fglGet with argument GL_LINE_WIDTH
fglGet with argument GL_ALIASED_LINE_WIDTH_RANGE
fglGet with argument GL_SMOOTH_LINE_WIDTH_RANGE
fglGet with argument GL_SMOOTH_LINE_WIDTH_GRANULARITY
fglIsEnabled with argument GL_LINE_SMOOTH
MACHINE DEPENDENCIES
InfiniteReality systems do not support antialiased lines in color-index
rendering contexts. (They are rendered as ordinary lines instead.)
SEE ALSO
fglBlendFunc, fglEnable, fglHint
Page 2