glBitmap.3gl








Name


  glBitmap - draw a bitmap





C Specification


  void glBitmap( GLsizei width,

		 GLsizei height,

		 GLfloat xorig,

		 GLfloat yorig,

		 GLfloat xmove,

		 GLfloat ymove,

		 const GLubyte *bitmap )





Parameters




  width, height	Specify	the pixel width	and height of the bitmap image.





  xorig, yorig	Specify	the location of	the origin in the bitmap image.	 The

		origin is measured from	the lower left corner of the bitmap,

		with right and up being	the positive axes.





  xmove, ymove	Specify	the x and y offsets to be added	to the current raster

		position after the bitmap is drawn.





  bitmap	Specifies the address of the bitmap image.





Description


  A bitmap is a	binary image.  When drawn, the bitmap is positioned relative

  to the current raster	position, and frame buffer pixels corresponding	to

  ones in the bitmap are written using the current raster color	or index.

  Frame	buffer pixels corresponding to zeros in	the bitmap are not modified.



  glBitmap takes seven arguments.  The first pair specify the width and

  height of the	bitmap image.  The second pair specify the location of the

  bitmap origin	relative to the	lower left corner of the bitmap	image.	The

  third	pair of	arguments specify x and	y offsets to be	added to the current

  raster position after	the bitmap has been drawn.  The	final argument is a

  pointer to the bitmap	image itself.



  The bitmap image is interpreted like image data for the glDrawPixels

  command, with	width and height corresponding to the width and	height

  arguments of that command, and with type set to GL_BITMAP and	format set to

  GL_COLOR_INDEX.  Modes specified using glPixelStore affect the

  interpretation of bitmap image data; modes specified using glPixelTransfer

  do not.



  If the current raster	position is invalid, glBitmap is ignored.  Otherwise,

  the lower left corner	of the bitmap image is positioned at the window

  coordinates



			       x  = floor (x - x )

				w           r   o



			       y  = floor (y - y )

				w           r   o



  where	(x ,y )	is the raster position and (x ,y ) is the bitmap origin.

          r  r                               o  o



  Fragments are then generated for each pixel corresponding to a one in	the

  bitmap image.	 These fragments are generated using the current raster	z

  coordinate, color or color index, and	current	raster texture coordinates.

  They are then	treated	just as	if they	had been generated by a	point, line,

  or polygon, including	texture	mapping, fogging, and all per-fragment

  operations such as alpha and depth testing.



  After	the bitmap has been drawn, the x and y coordinates of the current

  raster position are offset by	xmove and ymove.  No change is made to the z

  coordinate of	the current raster position, or	to the current raster color,

  index, or texture coordinates.



Errors


  GL_INVALID_VALUE is generated	if width or height is negative.



  GL_INVALID_OPERATION is generated if glBitmap	is executed between the

  execution of glBegin and the corresponding execution of glEnd.



Associated Gets


  glGet	with argument GL_CURRENT_RASTER_POSITION

  glGet	with argument GL_CURRENT_RASTER_COLOR

  glGet	with argument GL_CURRENT_RASTER_INDEX

  glGet	with argument GL_CURRENT_RASTER_TEXTURE_COORDS

  glGet	with argument GL_CURRENT_RASTER_POSITION_VALID



See Also


  glDrawPixels,	glRasterPos, glPixelStore, glPixelTransfer


Introduction | Alphabetic | Specification

Last Edited: Mon, May 22, 1995

AFV