gl.Bitmap(xorig, yorig, xmove, ymove[, bitmapArray])
gl.Bitmap()
nimmt bis zu fünf Argumente auf. xorig
und yorig
geben die Position
des Bitmap-Ursprungs relativ zur unteren linken Ecke des Bitmap-Bildes an. xmove
und ymove
geben die X- und Y-Offsets an, die nach dem Zeichnen der Bitmap zur
aktuellen Rasterposition hinzugefügt werden sollen. Das letzte Argument bitmapArray
ist eine Tabelle, die Pixeldaten des Bitmap-Bildes selbst enthält.
Das Bitmap-Bild wird wie Bilddaten für den Befehl gl.DrawPixels()
interpretiert, wobei die Breite und Höhe der Bitmap den Argumenten width und
height des Befehls entspricht, der Typ auf GL_BITMAP
gesetzt wird und das
Format auf GL_COLOR_INDEX
festgelegt wird. Die mit gl.PixelStore()
angegebenen Modi beeinflussen die Interpretation von Bitmap-Bilddaten. Modi,
die mit gl.PixelTransfer() angegeben wurden, nicht.
Wenn die aktuelle Rasterposition ungültig ist, wird gl.Bitmap()
ignoriert.
Andernfalls wird die untere linke Ecke des Bitmapbilds an den
Fensterkoordinaten xw = xr - xo und yw = yr - yo positioniert, wobei (xr, yr)
die Rasterposition und (xo, yo) der Ursprung der Bitmap ist. Fragmente werden
dann für jedes Pixel erzeugt, das einer 1 (eins) in dem Bitmap-Bild entspricht.
Diese Fragmente werden unter Verwendung der aktuellen Raster-z-Koordinate, der
Farbe oder des Farbindex und der aktuellen Rastertexturkoordinaten erzeugt.
Sie werden dann so behandelt, als wären sie durch einen Punkt, eine Linie oder
ein Polygon erzeugt worden, einschließlich Textur-Mapping, Nebel und alle
Pixeloperatoren wie Alpha- und Tiefentests.
Nachdem die Bitmap gezeichnet wurde, werden die X- und Y-Koordinaten der
aktuellen Rasterposition um xmove
und ymove
versetzt. Es wird keine
Änderung an der z-Koordinate der aktuellen Rasterposition, an der
aktuellen Rasterfarbe, den Texturkoordinaten oder dem Index vorgenommen.
Um eine gültige Rasterposition außerhalb des Darstellungsbereichs festzulegen,
legen Sie zunächst eine gültige Rasterposition im Darstellungsbereich fest
und rufen Sie dann gl.Bitmap()
ohne den Bitmap-Parameter und mit xmove
und
ymove
die Offsets der neuen Rasterposition auf. Diese Technik ist nützlich,
wenn Sie ein Bild im Ansichtsfenster schwenken.
Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.
#GL_INVALID_OPERATION
wird generiert, wenn glBitmap zwischen
gl.Begin() und gl.End() ausgeführt wird.
#GL_CURRENT_RASTER_POSITION
gl.Get() mit dem Argument #GL_CURRENT_RASTER_COLOR
gl.Get() mit dem Argument #GL_CURRENT_RASTER_SECONDARY_COLOR
gl.Get() mit dem Argument #GL_CURRENT_RASTER_DISTANCE
gl.Get() mit dem Argument #GL_CURRENT_RASTER_INDEX
gl.Get() mit dem Argument #GL_CURRENT_RASTER_TEXTURE_COORDS
gl.Get() mit dem Argument #GL_CURRENT_RASTER_POSITION_VALID