GLUPICKMATRIX() GLUPICKMATRIX() NAME gluPickMatrix - define a picking region C SPECIFICATION void gluPickMatrix( GLdouble x, GLdouble y, GLdouble delX, GLdouble delY, GLint *viewport ) delim $$ PARAMETERS x, y Specify the center of a picking region in window coordinates. delX, delY Specify the width and height, respectively, of the picking region in window coordinates. viewport Specifies the current viewport (as from a glGetIntegerv call). DESCRIPTION gluPickMatrix creates a projection matrix that can be used to restrict drawing to a small region of the viewport. This is typically useful to de- termine what objects are being drawn near the cursor. Use gluPickMatrix to restrict drawing to a small region around the cursor. Then, enter selec- tion mode (with glRenderMode) and rerender the scene. All primitives that would have been drawn near the cursor are identified and stored in the se- lection buffer. The matrix created by gluPickMatrix is multiplied by the current matrix just as if glMultMatrix is called with the generated matrix. To effec- tively use the generated pick matrix for picking, first call glLoadIdentity to load an identity matrix onto the perspective matrix stack. Then call gluPickMatrix, and finally, call a command (such as gluPerspective) to mul- tiply the perspective matrix by the pick matrix. When using gluPickMatrix to pick NURBS, be careful to turn off the NURBS property GLU_AUTO_LOAD_MATRIX. If GLU_AUTO_LOAD_MATRIX is not turned off, then any NURBS surface rendered is subdivided differently with the pick ma- trix than the way it was subdivided without the pick matrix. EXAMPLE When rendering a scene as follows: glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(...); glMa- trixMode(GL_MODELVIEW); /* Draw the scene */ a portion of the viewport can be selected as a pick region like this: glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPickMatrix(x, y, width, height, viewport); gluPerspective(...); glMatrixMode(GL_MODELVIEW); /* Draw the scene */ SEE ALSO glGet, glLoadIndentity, glMultMatrix, glRenderMode, gluPerspective GLUPICKMATRIX()
NAME | C SPECIFICATION | PARAMETERS | DESCRIPTION | EXAMPLE | SEE ALSO
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=gluPickMatrix&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>
