glRasterPos4iv-Funktion

Gibt die Rasterposition für Pixelvorgänge an.

Syntax

void WINAPI glRasterPos4iv(
   const GLint *v
);

Parameter

V

Ein Zeiger auf ein Array von vier Elementen, das x-, y-, z- und w-Koordinaten für die aktuelle Rasterposition angibt.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Bemerkungen

OpenGL verwaltet eine 3D-Position in Fensterkoordinaten. Diese Position, die als Rasterposition bezeichnet wird, wird mit Subpixelgenauigkeit beibehalten. Es wird verwendet, um Pixel- und Bitmapschreibvorgänge zu positionieren. Siehe glBitmap, glDrawPixels und glCopyPixels.

Die aktuelle Rasterposition besteht aus drei Fensterkoordinaten (x, y, z), einer Clipkoordinate w-Wert , einem Augenkoordinatenabstand, einem gültigen Bit und zugeordneten Farb- und Texturkoordinaten. Die w-Koordinate ist eine Clipkoordinate, da w nicht auf Fensterkoordinaten projiziert wird. Die glRasterPos4-Funktion gibt die Objektkoordinaten x, y, z und w explizit an. Die glRasterPos3-Funktion gibt die Objektkoordinaten x, y und z explizit an, während w implizit auf 1 festgelegt ist. Die glRasterPos2-Funktion verwendet die Argumentwerte für x und y , während z und w implizit auf Null und 1 festgelegt werden.

Die von glRasterPos dargestellten Objektkoordinaten werden wie die eines glVertex-Befehls behandelt. Sie werden von den aktuellen Modellansichts- und Projektionsmatrizen transformiert und an die Clippingphase übergeben. Wenn der Scheitelpunkt nicht gekullt wird, wird er auf Fensterkoordinaten projiziert und skaliert, die zur neuen aktuellen Rasterposition werden, und das GL_CURRENT_RASTER_POSITION_VALID-Flag ist festgelegt. Wenn der Scheitelpunkt gekullt wird, wird das gültige Bit gelöscht, und die aktuelle Rasterposition und die zugeordneten Farb- und Texturkoordinaten sind nicht definiert.

Die aktuelle Rasterposition enthält auch einige zugeordnete Farbdaten und Texturkoordinaten. Wenn die Beleuchtung aktiviert ist, wird GL_CURRENT_RASTER_COLOR im RGBA-Modus oder der GL_CURRENT_RASTER_INDEX im Farbindexmodus auf die Von der Beleuchtungsberechnung erzeugte Farbe festgelegt (siehe glLight, glLightModel und glShadeModel). Wenn die Beleuchtung deaktiviert ist, wird die aktuelle Farbe (im RGBA-Modus, Zustandsvariable GL_CURRENT_COLOR) oder Farbindex (im Farbindexmodus, Zustandsvariable GL_CURRENT_INDEX) verwendet, um die aktuelle Rasterfarbe zu aktualisieren.

Ebenso wird GL_CURRENT_RASTER_TEXTURE_COORDS als Funktion von GL_CURRENT_TEXTURE_COORDS aktualisiert, basierend auf der Texturmatrix und den Texturgenerierungsfunktionen (siehe glTexGen). Schließlich ersetzt der Abstand vom Ursprung des Augenkoordinatensystems zum Scheitelpunkt, wie er nur durch die Modellansichtsmatrix transformiert wird, GL_CURRENT_RASTER_DISTANCE.

Zunächst ist die aktuelle Rasterposition (0,0,0,1), der aktuelle Rasterabstand 0, das gültige Bit ist festgelegt, die zugeordnete RGBA-Farbe (1,1,1,1), der zugeordnete Farbindex ist 1, und die zugeordneten Texturkoordinaten sind (0, 0, 0, 1). Im RGBA-Modus ist GL_CURRENT_RASTER_INDEX immer 1; Im Farbindexmodus behält die aktuelle Raster-RGBA-Farbe immer ihren Anfangswert bei.

Hinweis

Die Rasterposition wird sowohl von glRasterPos als auch von glBitmap geändert.

Hinweis

Wenn die Rasterpositionskoordinaten ungültig sind, werden Zeichenbefehle ignoriert, die auf der Rasterposition basieren (das heißt, sie führen nicht zu Änderungen des OpenGL-Zustands).

Die folgenden Funktionen rufen Informationen im Zusammenhang mit glRasterPos ab:

glGet mit Argument GL_CURRENT_RASTER_POSITION
glGet mit Argument GL_CURRENT_RASTER_POSITION_VALID
glGet mit Argument GL_CURRENT_RASTER_DISTANCE
glGet mit Argument GL_CURRENT_RASTER_COLOR
glGet mit Argument GL_CURRENT_RASTER_INDEX
glGet mit Argument GL_CURRENT_RASTER_TEXTURE_COORDS

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

glBitmap

glCopyPixels

glDrawPixels

glEnd

glLight

glLightModel

glShadeModel

glTexCoord

glTexGen

glVertex