glBitmap-Funktion

Die glBitmap-Funktion zeichnet eine Bitmap.

Syntax

void WINAPI glBitmap(
         GLSizei width,
         GLSizei height,
         GLfloat xorig,
         GLfloat yorig,
         GLfloat xmove,
         GLfloat ymove,
   const GLubyte *bitmap
);

Parameter

width

Die Pixelbreite des Bitmapbilds.

height

Die Pixelhöhe des Bitmapbilds.

xorig

Die x-Position des Ursprungs im Bitmapbild. Der Ursprung wird von der unteren linken Ecke der Bitmap gemessen, wobei rechts und oben die positiven Achsen sind.

yorig

Die y-Position des Ursprungs im Bitmapbild. Der Ursprung wird von der unteren linken Ecke der Bitmap gemessen, wobei rechts und oben die positiven Achsen sind.

Xmove

Der x-Offset , der der aktuellen Rasterposition hinzugefügt werden soll, nachdem die Bitmap gezeichnet wurde.

ymove

Der y-Offset , der der aktuellen Rasterposition hinzugefügt werden soll, nachdem die Bitmap gezeichnet wurde.

Bitmap

Die Adresse des Bitmapbilds.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_VALUE
die Breite oder Höhe ist negativ.
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Eine Bitmap ist ein binäres Bild. Beim Zeichnen wird die Bitmap relativ zur aktuellen Rasterposition positioniert, und Framebuffer-Pixel, die 1s in der Bitmap entsprechen, werden mit der aktuellen Rasterfarbe oder dem aktuellen Index geschrieben. Framepufferpixel, die Nullen in der Bitmap entsprechen, werden nicht geändert.

Das Bitmapbild wird wie Bilddaten für die GlDrawPixels-Funktion interpretiert, wobei breite und höhe den Breiten- und Höhenargumenten dieser Funktion entsprechen und der Typ auf GL_BITMAP und format auf GL_COLOR_INDEX festgelegt ist. Modi, die Sie mithilfe von glPixelStore angeben, wirken sich auf die Interpretation von Bitmapbilddaten aus. Modi, die Sie mithilfe von glPixelTransfer angeben, tun dies nicht.

Wenn die aktuelle Rasterposition ungültig ist, wird glBitmap ignoriert. Andernfalls wird die linke untere Ecke des Bitmapbilds an den folgenden Fensterkoordinaten positioniert:

xb = xrx?

yw = yry?

In diesen Koordinaten ist (xr , yr ) die Rasterposition und (x? , y? ) der Bitmapursprung. Fragmente werden dann für jedes Pixel generiert, das einer 1 im Bitmapbild entspricht. Diese Fragmente werden mit der aktuellen Raster-Z-Koordinate, der Farbe oder dem Farbindex und den aktuellen Rastertexturkoordinaten generiert. Sie werden dann so behandelt, als ob sie von einem Punkt, einer Linie oder einem Polygon generiert worden wären, einschließlich Texturzuordnung, Nebelung und allen Fragmentvorgängen wie Alpha- und Tiefentests.

Nachdem die Bitmap gezeichnet wurde, werden die x - und y-Koordinaten der aktuellen Rasterposition durch xmove und ymove versetzt. Es wird keine Änderung an der Z-Koordinate der aktuellen Rasterposition oder an den aktuellen Rasterfarben, Index- oder Texturkoordinaten vorgenommen.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit der glBitmap-Funktion ab:

glGet mit Argument GL_CURRENT_RASTER_POSITION

glGet mit Argument GL_CURRENT_RASTER_COLOR

glGet mit Argument GL_CURRENT_RASTER_INDEX

glGet mit Argument GL_CURRENT_RASTER_TEXTURE_COORDS

glGet mit Argument GL_CURRENT_RASTER_POSITION_VALID

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Siehe auch

glBegin

glDrawPixels

glEnd

glPixelStore

glPixelTransfer

glRasterPos