glPointSize.3gl







Name

  glPointSize -	specify	the diameter of	rasterized points





C Specification

  void glPointSize( GLfloat size )





Parameters



  size	Specifies the diameter of rasterized points.  The default is 1.0.





Description

  glPointSize specifies	the rasterized diameter	of both	aliased	and

  antialiased points.  Using a point size other	than 1.0 has different

  effects, depending on	whether	point antialiasing is enabled.	Point

  antialiasing is controlled by	calling	glEnable and glDisable with argument

  GL_POINT_SMOOTH.



  If point antialiasing	is disabled, the actual	size is	determined by

  rounding the supplied	size to	the nearest integer.  (If the rounding

  results in the value 0, it is	as if the point	size were 1.) If the rounded

  size is odd, then the	center point (x, y) of the pixel fragment that

  represents the point is computed as



		    ( floor(x )+.5, floor(y )+.5 )

			     w	           w



  where	w subscripts indicate window coordinates.  All pixels that lie within

  the square grid of the rounded size centered at (x, y) make up the

  fragment.  If	the size is even, the center point is



		    ( floor(x +.5), floor(y +.5) )

			     w	           w



  and the rasterized fragment's	centers	are the	half-integer window

  coordinates within the square	of the rounded size centered at	(x, y).	 All

  pixel	fragments produced in rasterizing a nonantialiased point are assigned

  the same associated data, that of the	vertex corresponding to	the point.



  If antialiasing is enabled, then point rasterization produces	a fragment

  for each pixel square	that intersects	the region lying within	the circle

  having diameter equal	to the current point size and centered at the point's

  (x , y ).  The coverage value	for each fragment is the window	coordinate

    w   w

  area of the intersection of the circular region with the corresponding

  pixel	square.	 This value is saved and used in the final rasterization

  step.	The data associated with each fragment is the data associated with

  the point being rasterized.



  Not all sizes	are supported when point antialiasing is enabled. If an

  unsupported size is requested, the nearest supported size is used.  Only

  size 1.0 is guaranteed to be supported; others depend	on the

  implementation.  The range of	supported sizes	and the	size difference

  between supported sizes within the range can be queried by  calling glGet

  with arguments GL_POINT_SIZE_RANGE and GL_POINT_SIZE_GRANULARITY.



Notes

  The point size specified by glPointSize is always returned when

  GL_POINT_SIZE	is queried.  Clamping and rounding for aliased and

  antialiased points have no effect on the specified value.



  Non-antialiased point	size 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 points, rounded to the nearest integer

  value.



Errors

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



  GL_INVALID_OPERATION is generated if glPointSize is executed between the

  execution of glBegin and the corresponding execution of glEnd.



Associated Gets

  glGet	with argument GL_POINT_SIZE

  glGet	with argument GL_POINT_SIZE_RANGE

  glGet	with argument GL_POINT_SIZE_GRANULARITY

  glIsEnabled with argument GL_POINT_SMOOTH





See Also

  glEnable, glPointSmooth


Introduction | Alphabetic | Specification

Last Edited: Tue, May 23, 1995

AFV