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, der x-, y-, z- und w-Koordinaten für die aktuelle Rasterposition angibt.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Hinweise
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, glDrawPixelsund glCopyPixels.
Die aktuelle Rasterposition besteht aus drei Fensterkoordinaten (x, y, z), einem Clipkoordinaten w-Wert, einem Augenkoordinatenabstand, einem gültigen Bit und zugeordneten Farbdaten und Texturkoordinaten. Die w-Koordinate ist eine Clipkoordinate, da w nicht auf Fensterkoordinaten projiziert wird. Die glRasterPos4-Funktion gibt explizit die Objektkoordinaten x, y, z und w an. Die glRasterPos3-Funktion gibt die Objektkoordinaten x, y und z explizit an, während w implizit auf eins festgelegt ist. Die glRasterPos2-Funktion verwendet die Argumentwerte für x und y, während z und w implizit auf 0 und eins festgelegt werden.
Die von glRasterPos dargestellten Objektkoordinaten werden wie die eines glVertex-Befehls behandelt. Sie werden durch die aktuelle Modellansicht und Projektionsmatrizen transformiert und an die Clippingphase übergeben. Wenn der Scheitelpunkt nicht gekäutert wird, wird er projiziert und auf Fensterkoordinaten skaliert, die zur neuen aktuellen Rasterposition werden, und das _ GL CURRENT RASTER POSITION _ _ _ VALID-Flag wird festgelegt. Wenn der Scheitelpunkt gekäutert wird, wird das gültige Bit gelöscht, und die aktuelle Rasterposition und die zugehörigen 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 gl _ CURRENT RASTER INDEX im _ _ Farbindexmodus auf die Farbe festgelegt, die durch die Beleuchtungsberechnung erzeugt wird (siehe glLight, glLightModelund glShadeModel). Wenn die Beleuchtung deaktiviert ist, wird die aktuelle Farbe (im RGBA-Modus, zustandsvariable GL CURRENT COLOR) oder der _ _ 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 basierend auf der Texturmatrix und den Texturgenerierungsfunktionen aktualisiert (siehe glTexGen). Schließlich ersetzt der Abstand vom Ursprung des Augenkoordinatensystems zum Scheitelpunkt, der nur durch die Modellansichtsmatrix transformiert wird, GL _ CURRENT _ RASTER _ DISTANCE.
Anfänglich ist die aktuelle Rasterposition (0,0,0,1), der aktuelle Rasterabstand ist 0, das gültige Bit wird festgelegt, die zugeordnete RGBA-Farbe ist (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 durch glRasterPos als auch durch glBitmapgeändert.
Hinweis
Wenn die Rasterpositionskoordinaten ungültig sind, werden Zeichnungsbefehle, die auf der Rasterposition basieren, ignoriert (d.b. sie führen nicht zu Änderungen am OpenGL-Zustand).
Die folgenden Funktionen rufen Informationen im Zusammenhang mit glRasterPosab:
glGet mit argument GL _ CURRENT _ RASTER _ POSITION
glGet mit argument GL _ CURRENT RASTER POSITION _ _ _ VALID
glGet mit argument GL _ CURRENT _ RASTER _ DISTANCE
glGet mit dem Argument GL _ CURRENT _ RASTER _ COLOR
glGet mit argument GL _ CURRENT _ RASTER _ INDEX
glGet mit dem 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 |
|
| Bibliothek |
|
| DLL |
|