glRasterPos4iv, fonction

Spécifie la position de rastériseur pour les opérations de pixels.

Syntaxe

void WINAPI glRasterPos4iv(
   const GLint *v
);

Paramètres

C

Pointeur vers un tableau de quatre éléments, spécifiant des coordonnées x, y, z et w pour la position de rastériseur actuelle.

Valeur renvoyée

Cette fonction ne retourne pas de valeur.

Notes

OpenGL conserve une position 3D dans les coordonnées de fenêtre. Cette position, appelée position raster, est maintenue avec une précision de sous-pixel. Il est utilisé pour positionner les opérations d’écriture de pixels et de bitmap. Consultez glBitmap, glDrawPixels et glCopyPixels.

La position de rastériseur actuelle se compose de trois coordonnées de fenêtre (x, y, z), d’une coordonnée clip w , d’une distance de coordonnées oculaires, d’un bit valide et de données de couleur et de coordonnées de texture associées. La coordonnée w est une coordonnée clip, car w n’est pas projeté en coordonnées de fenêtre. La fonction glRasterPos4 spécifie explicitement les coordonnées d’objet x, y, z et w . La fonction glRasterPos3 spécifie explicitement les coordonnées d’objet x, y et z , tandis que w est implicitement défini sur un. La fonction glRasterPos2 utilise les valeurs d’argument pour x et y tout en définissant implicitement z et w sur zéro et un.

Les coordonnées d’objet présentées par glRasterPos sont traitées comme celles d’une commande glVertex . Ils sont transformés par les matrices modelview et projection actuelles et passées à l’étape de découpage. Si le vertex n’est pas abattu, il est projeté et mis à l’échelle en coordonnées de fenêtre, qui deviennent la nouvelle position de rastériseur actuelle, et l’indicateur de GL_CURRENT_RASTER_POSITION_VALID est défini. Si le vertex est abattu, le bit valide est effacé et la position de rastériseur actuelle et les coordonnées de couleur et de texture associées ne sont pas définies.

La position de rastériseur actuelle inclut également des données de couleur et des coordonnées de texture associées. Si l’éclairage est activé, GL_CURRENT_RASTER_COLOR, en mode RVBA ou le GL_CURRENT_RASTER_INDEX, en mode d’index de couleur, est défini sur la couleur produite par le calcul de l’éclairage (voir glLight, glLightModel et glShadeModel). Si l’éclairage est désactivé, la couleur actuelle (en mode RVBA, variable d’état GL_CURRENT_COLOR) ou l’index de couleur (en mode d’index de couleur, variable d’état GL_CURRENT_INDEX) est utilisée pour mettre à jour la couleur raster actuelle.

De même, GL_CURRENT_RASTER_TEXTURE_COORDS est mis à jour en tant que fonction de GL_CURRENT_TEXTURE_COORDS, en fonction de la matrice de texture et des fonctions de génération de texture (voir glTexGen). Enfin, la distance entre l’origine du système de coordonnées oculaires et le vertex, transformée uniquement par la matrice modelview, remplace GL_CURRENT_RASTER_DISTANCE.

Initialement, la position raster actuelle est (0,0,0,1), la distance de rastérisation actuelle est 0, le bit valide est défini, la couleur RVBA associée est (1,1,1,1), l’index de couleur associé est 1 et les coordonnées de texture associées sont (0, 0, 0, 0, 1). En mode RVBA, GL_CURRENT_RASTER_INDEX est toujours 1 ; en mode d’index de couleur, la couleur RVBA raster actuelle conserve toujours sa valeur initiale.

Notes

La position de rastériseur est modifiée à la fois par glRasterPos et par glBitmap.

Notes

Lorsque les coordonnées de position raster ne sont pas valides, les commandes de dessin basées sur la position de rastériseur sont ignorées (autrement dit, elles n’entraînent pas de modifications à l’état OpenGL).

Les fonctions suivantes récupèrent des informations relatives à glRasterPos :

glGet avec l’argument GL_CURRENT_RASTER_POSITION
glGet avec l’argument GL_CURRENT_RASTER_POSITION_VALID
glGet avec l’argument GL_CURRENT_RASTER_DISTANCE
glGet avec l’argument GL_CURRENT_RASTER_COLOR
glGet avec l’argument GL_CURRENT_RASTER_INDEX
glGet avec l’argument GL_CURRENT_RASTER_TEXTURE_COORDS

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Gl.h
Bibliothèque
Opengl32.lib
DLL
Opengl32.dll

Voir aussi

glBegin

glBitmap

glCopyPixels

glDrawPixels

glEnd

glLight

glLightModel

glShadeModel

glTexCoord

glTexGen

glVertex