glLineWidth.3gl




Name

  glLineWidth -	specify	the width of rasterized	lines


C Specification

  void glLineWidth( GLfloat width )


Parameters


  width	 Specifies the width of	rasterized lines.  The default is 1.0.


Description

  glLineWidth specifies	the rasterized width of	both aliased and antialiased
  lines.  Using	a line width other than	1.0 has	different effects, depending
  on whether line antialiasing is enabled.  Line antialiasing is controlled
  by calling glEnable and glDisable with argument GL_LINE_SMOOTH.

  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 |dx| >= |dy|,
  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.0 is guaranteed to be	supported; others depend on the
  implementation.  The range of	supported widths and the size difference
  between supported widths within the range can	be queried by calling glGet
  with arguments GL_LINE_WIDTH_RANGE and GL_LINE_WIDTH_GRANULARITY.

Notes

  The line width specified by glLineWidth is always returned when
  GL_LINE_WIDTH	is queried.  Clamping and rounding for aliased and
  antialiased lines have no effect on the specified value.

  Non-antialiased line width may be clamped to an implementation-dependent
  maximum.  Although this maximum cannot be queried, it	must be	no less	than
  the maximum value for	antialiased lines, rounded to the nearest integer
  value.



Errors

  GL_INVALID_VALUE is generated	if width is less than or equal to zero.

  GL_INVALID_OPERATION is generated if glLineWidth is executed between the
  execution of glBegin and the corresponding execution of glEnd.

Associated Gets

  glGet	with argument GL_LINE_WIDTH
  glGet	with argument GL_LINE_WIDTH_RANGE
  glGet	with argument GL_LINE_WIDTH_GRANULARITY
  glIsEnabled with argument GL_LINE_SMOOTH

See Also

  glEnable, glLineSmooth