Fonction gluPickMatrix
La fonction gluPickMatrix définit une région de sélection.
Syntaxe
void WINAPI gluPickMatrix(
GLdouble x,
GLdouble y,
GLdouble height,
GLdouble width,
GLint viewport[4]
);
Paramètres
-
x
-
Coordonnée de fenêtre x d’une région de sélection.
-
y
-
Coordonnée de la fenêtre y d’une région de sélection.
-
height
-
Hauteur de la région de sélection dans les coordonnées de fenêtre.
-
width
-
Largeur de la région de sélection dans les coordonnées de fenêtre.
-
Fenêtre
-
La fenêtre d’affichage actuelle (à partir d’un appel glGetIntegerv ).
Valeur renvoyée
Cette fonction ne retourne pas de valeur.
Notes
La fonction gluPickMatrix crée une matrice de projection que vous pouvez utiliser pour limiter le dessin à une petite région de la fenêtre d’affichage.
Utilisez gluPickMatrix pour limiter le dessin à une petite région autour du curseur.
Entrez en mode de sélection (avec glRenderMode), puis réactivez la scène.
Toutes les primitives qui auraient été dessinées près du curseur sont identifiées et stockées dans la mémoire tampon de sélection.
La matrice créée par gluPickMatrix est multipliée par la matrice actuelle comme si glMultMatrix était appelé avec la matrice générée.
- Appelez glLoadIdentity pour charger une matrice d’identité sur la pile de matrice de perspective.
- Appelez gluPickMatrix.
- Appelez une fonction (telle que gluPerspective) pour multiplier la matrice de perspective par la matrice de sélection.
Lorsque vous utilisez gluPickMatrix pour choisir Non-Uniform Rational B-Spline (NURBS), veillez à désactiver la propriété NURBS, GLU_AUTO_LOAD_MATRIX. Si GLU_AUTO_LOAD_MATRIX n’est pas désactivé, toute surface NURBS rendue est subdivisé différemment avec la matrice de sélection de la façon dont elle a été subdivisé sans la matrice de sélection.
Exemples
Lors du rendu d’une scène comme suit :
glMatrixMode(GL_PROJECTION);
glLoadIdentity( );
gluPerspective(. . .);
glMatrixMode(GL_MODELVIEW);
/* Draw the scene */
le code suivant sélectionne une partie de la fenêtre d’affichage :
glMatrixMode(GL_PROJECTION);
glLoadIdentity( );
gluPickMatrix(x, y, width, height, viewport);
gluPerspective(. . .);
glMatrixMode(GL_MODELVIEW);
/* Draw the scene */
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 |
|
Bibliothèque |
|
DLL |
|