ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



GLUUNPROJECT(3G)                                                                            GLUUNPROJECT(3G)



NAME
       gluUnProject - map window coordinates to object coordinates


C SPECIFICATION
       GLint gluUnProject( GLdouble winX,
                           GLdouble winY,
                           GLdouble winZ,
                           const GLdouble *model,
                           const GLdouble *proj,
                           const GLint *view,
                           GLdouble* objX,
                           GLdouble* objY,
                           GLdouble* objZ )


PARAMETERS
       winX, winY, winZ
                       Specify the window coordinates to be mapped.

       model           Specifies the modelview matrix (as from a glGetDoublev call).

       proj            Specifies the projection matrix (as from a glGetDoublev call).

       view            Specifies the viewport (as from a glGetIntegerv call).

       objX, objY, objZ
                       Returns the computed object coordinates.

DESCRIPTION
       gluUnProject  maps  the  specified  window coordinates into object coordinates using model, proj, and
       view.  The result is stored in objX, objY, and objZ. A return value of GL_TRUE indicates  success;  a
       return value of GL_FALSE indicates failure.

       To  compute  the  coordinates  (objX,  objY, and objZ), gluUnProject multiplies the normalized device
       coordinates by the inverse of model*proj as follows:


                                2(winX - view[0])
                                -----------------  - 1
                                     view[2]

           objX                 2(winY - view[1])
           objY   =  INV(PM)    -----------------  - 1
           objZ                      view[3]
            W
                                     2(winZ)       - 1

                                        1


       INV() denotes matrix inversion.  W is an unused variable, included for consistent matrix notation.

SEE ALSO
       glGet(3G), gluProject(3G)




                                                                                            GLUUNPROJECT(3G)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.