glGetColorTableEXT fonction)
La fonction glGetColorTableEXT obtient les données de la table des couleurs de la palette de texture ciblée actuelle.
Syntaxe
void WINAPI glGetColorTableEXT(
GLenum target,
GLenum format,
GLenum type,
const GLvoid *data
);
Paramètres
-
cible
-
Texture cible dont la palette doit être modifiée. Doit être une TEXTURE _ 1D ou une texture _ 2D.
-
format
-
Format des données de pixels. Les constantes symboliques suivantes sont acceptées.
Valeur Signification - GL_RGBA
Chaque pixel est un groupe de quatre composants dans l’ordre suivant : rouge, vert, bleu, alpha. Le format RVBA est déterminé de la façon suivante : - La fonction glGetColorTableEXT convertit les valeurs à virgule flottante directement en un format interne avec une précision non spécifiée. Les valeurs entières signées sont mappées de façon linéaire au format interne de telle sorte que la valeur entière représentable la plus positive corresponde à 1,0, et la valeur entière représentable la plus négative correspond à-1,0. Les données entières non signées sont mappées de la même façon : la plus grande valeur entière correspond à 1,0, et zéro est mappé à 0,0.
- La fonction glGetColorTableEXT multiplie les valeurs de couleur résultantes par GL_c_SCALE et les ajoute à GL_c_BIAS, où c est rouge, vert, bleu et alpha pour les composants de couleur respectifs. Les résultats sont ancrés à la plage [0, 1].
- Si GL_MAP_COLOR a la valeur true, glGetColorTableEXT met à l’échelle chaque composant de couleur en fonction de la taille de la table de recherche GL_PIXEL_MAP_c_TO_c, puis remplace le composant par la valeur qu’il référence dans cette table. c est R, G, B ou a, respectivement.
- La fonction glGetColorTableEXT convertit les couleurs RVBA obtenues en fragments en attachant la coordonnée z et la coordonnée de texture de la position raster actuelle à chaque pixel, puis en affectant les coordonnées de la fenêtre x et y au nième fragment, par exemple x? = xr + n mod largeur
y? = r + n/largeur o
où (xr , yr ) est la position de la trame actuelle. - Ces fragments de pixels sont ensuite traités comme les fragments générés par la pixellisation des points, des lignes ou des polygones. La fonction glGetColorTableEXT applique le mappage de texture, le brouillard et toutes les opérations de fragment avant d’écrire les fragments dans le trame.
- GL_RED
Chaque pixel est un composant rouge unique.
La fonction glGetColorTableEXT convertit ce composant au format interne de la même façon que le composant rouge d’un pixel RVBA est, puis le convertit en pixel RVBA avec le vert et le bleu réglés sur 0,0 et alpha défini sur 1,0. Après cette conversion, le pixel est traité comme s’il avait été lu en tant que pixel RVBA.- GL_GREEN
Chaque pixel est un composant vert unique.
La fonction glGetColorTableEXT convertit ce composant au format interne de la même façon que le composant vert d’un pixel RVBA est, puis le convertit en pixel RVBA avec rouge et bleu défini sur 0,0, et alpha défini sur 1,0. Après cette conversion, le pixel est traité comme s’il avait été lu en tant que pixel RVBA.- GL_BLUE
Chaque pixel est un composant bleu unique.
La fonction glGetColorTableEXT convertit ce composant au format interne de la même façon que le composant bleu d’un pixel RVBA est, puis le convertit en pixel RVBA avec Red et Green défini sur 0,0, et alpha défini sur 1,0. Après cette conversion, le pixel est traité comme s’il avait été lu en tant que pixel RVBA.- GL_ALPHA
Chaque pixel est un composant alpha unique.
La fonction glGetColorTableEXT convertit ce composant au format interne de la même façon que le composant alpha d’un pixel RVBA est, puis le convertit en un pixel RVBA avec rouge, vert et bleu défini sur 0,0. Après cette conversion, le pixel est traité comme s’il avait été lu en tant que pixel RVBA.- GL_RGB
Chaque pixel est un groupe de trois composants dans cet ordre : rouge, vert, bleu.
La fonction glGetColorTableEXT convertit chaque composant au format interne de la même façon que les composants rouge, vert et bleu d’un pixel RVBA. La triple couleur est convertie en un pixel RVBA avec alpha défini sur 1,0. Après cette conversion, le pixel est traité comme s’il avait été lu en tant que pixel RVBA.- GL_BGR_EXT
Chaque pixel est un groupe de trois composants dans cet ordre : bleu, vert, rouge.
GL_BGR_EXT fournit un format qui correspond à la disposition mémoire des bitmaps indépendantes du périphérique (dib) de Microsoft Windows. ainsi, vos applications peuvent utiliser les mêmes données avec les appels de fonction Windows et les appels de fonction de pixel OpenGL.- GL_BGRA_EXT
Chaque pixel est un groupe de quatre composants dans l’ordre suivant : bleu, vert, rouge, alpha.
GL_BGRA_EXT fournit un format qui correspond à la disposition de la mémoire des Windows des bitmaps indépendantes du périphérique (dib). par conséquent, vos applications peuvent utiliser les mêmes données avec les appels de fonction Windows et les appels de fonction de pixel OpenGL. -
type
-
Type de données pour les données. Voici les constantes symboliques acceptées et leurs significations.
Valeur Signification - _octet non signé GL _
Entier 8 bits non signé - _octet GL
Entier 8 bits signé - NON signé dans le GL _ _
Entier 16 bits non signé - _abrégé GL
Entier 16 bits signé - _entier non signé GL _
Entier 32 bits non signé - GL _ int
Entier de 32 bits - valeur _ float du GL
Valeur à virgule flottante simple précision -
data
-
Pointe vers l’emplacement où les informations de table des couleurs retournées doivent être stockées. Chaque entrée de table des couleurs est stockée comme s’il s’agissait d’un pixel unique d’une texture 1D. Étant donné que toutes les textures ont une palette par défaut, glGetColorTableEXT retourne toujours les informations de palette même si les données de texture ne sont pas dans un format de palette.
Valeur renvoyée
Cette fonction ne retourne pas de valeur.
Codes d’erreur
Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .
| Name | Signification |
|---|---|
|
la cible, le format ou le type n’était pas une valeur acceptée. |
|
La fonction a été appelée entre un appel à glBegin et l’appel correspondant à glEnd. |
Remarques
La fonction glGetColorTableEXT obtient les données de la table des couleurs réelles spécifiées par glColorTableEXT et glColorSubTableEXT.
La fonction glGetColorTableEXT est une fonction d’extension qui ne fait pas partie de la bibliothèque OpenGL standard, mais qui fait partie de l' _ extension de texture de palette ext GL _ _ . Pour vérifier si votre implémentation d’OpenGL prend en charge glGetColorTableEXT, appelez glGetString( _ Extensions GL). Si elle retourne la _ _ texture de palette ext GL _ , glGetColorTableEXT est pris en charge. Pour obtenir l’adresse de fonction d’une fonction d’extension, appelez wglGetProcAddress.
Configuration requise
| 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 |
|