funzione glRasterPos4i

Specifica la posizione raster per le operazioni pixel.

Sintassi

void WINAPI glRasterPos4i(
   GLint x,
   GLint y,
   GLint z,
   GLint w
);

Parametri

x

Specifica la coordinata x per la posizione raster corrente.

y

Specifica la coordinata y per la posizione raster corrente.

Z

Specifica la coordinata z per la posizione raster corrente.

w

Coordinata w per la posizione raster corrente.

Valore restituito

Questa funzione non restituisce un valore.

Commenti

OpenGL mantiene una posizione 3D nelle coordinate della finestra. Questa posizione, denominata posizione raster, viene mantenuta con accuratezza subpixel. Viene usato per posizionare operazioni di scrittura di pixel e bitmap. Vedere glBitmap, glDrawPixels e glCopyPixels.

La posizione raster corrente è costituita da tre coordinate della finestra (x, y, z), un valore di coordinata clip w , una distanza di coordinate oculari, un bit valido e coordinate di colore associate e coordinate di trama. La coordinata w è una coordinata clip, perché w non è proiettata alle coordinate della finestra. La funzione glRasterPos4 specifica le coordinate dell'oggetto x, y, z e w in modo esplicito. La funzione glRasterPos3 specifica le coordinate dell'oggetto x, y e z in modo esplicito, mentre w è impostato in modo implicito su uno. La funzione glRasterPos2 usa i valori degli argomenti per x e y durante l'impostazione implicita di z e w su zero e uno.

Le coordinate dell'oggetto presentate da glRasterPos vengono trattate esattamente come quelle di un comando glVertex . Vengono trasformati dalle matrici di modello e di proiezione correnti e passate alla fase di ritaglio. Se il vertice non viene generato, viene proiettato e ridimensionato alle coordinate della finestra, che diventano la nuova posizione raster corrente e viene impostato il flag GL_CURRENT_RASTER_POSITION_VALID. Se il vertice viene eliminato, il bit valido viene deselezionato e la posizione raster corrente e le coordinate di colore e trama associate non sono definiti.

La posizione raster corrente include anche alcuni dati di colore associati e coordinate della trama. Se l'illuminazione è abilitata, GL_CURRENT_RASTER_COLOR, in modalità RGBA o la GL_CURRENT_RASTER_INDEX, in modalità indice colore, viene impostata sul colore prodotto dal calcolo dell'illuminazione (vedere glLight, glLightModel e glShadeModel). Se l'illuminazione è disabilitata, il colore corrente (in modalità RGBA, la variabile di stato GL_CURRENT_COLOR) o l'indice di colore (in modalità indice colore, la variabile di stato GL_CURRENT_INDEX) viene usata per aggiornare il colore raster corrente.

Analogamente, GL_CURRENT_RASTER_TEXTURE_COORDS viene aggiornato come funzione di GL_CURRENT_TEXTURE_COORDS, in base alla matrice di trama e alle funzioni di generazione della trama (vedere glTexGen). Infine, la distanza dall'origine del sistema di coordinate oculari al vertice, come trasformato solo dalla matrice modelview, sostituisce GL_CURRENT_RASTER_DISTANCE.

Inizialmente, la posizione raster corrente è (0.0.0.1), la distanza raster corrente è 0, il bit valido è impostato, il colore RGBA associato è (1,1,1,1), l'indice di colore associato è 1 e le coordinate della trama associate sono (0, 0, 0, 1). In modalità RGBA, GL_CURRENT_RASTER_INDEX è sempre 1; in modalità color-index, il colore RGBA raster corrente mantiene sempre il valore iniziale.

Nota

La posizione raster viene modificata sia da glRasterPos che da glBitmap.

Nota

Quando le coordinate di posizione raster non sono valide, i comandi di disegno basati sulla posizione raster vengono ignorati, ovvero non generano modifiche allo stato OpenGL.

Le funzioni seguenti recuperano informazioni correlate a glRasterPos:

glGet con argomento GL_CURRENT_RASTER_POSITION
glGet con argomento GL_CURRENT_RASTER_POSITION_VALID
glGet con argomento GL_CURRENT_RASTER_DISTANCE
glGet con argomento GL_CURRENT_RASTER_COLOR
glGet con argomento GL_CURRENT_RASTER_INDEX
glGet con argomento GL_CURRENT_RASTER_TEXTURE_COORDS

Requisiti

Requisito Valore
Client minimo supportato
Windows 2000 Professional [solo app desktop]
Server minimo supportato
Windows 2000 Server [solo app desktop]
Intestazione
Gl.h
Libreria
Opengl32.lib
DLL
Opengl32.dll

Vedi anche

glBegin

glBitmap

glCopyPixels

glDrawPixels

glEnd

glLight

glLightModel

glShadeModel

glTexCoord

glTexGen

glVertex