GLUUNPROJECT(3gl)
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:
- objX
2_(_w_i_nv_Xi_-e_vw_i[_e2_w]_[_0_]_)_-1
- objY
- 2_(_w_i_nv_Yi_-e_vw_i[_e3_w]_[_1_]_)_-1
- ( )=INV(PM)( )
objZ2(winZ)-1- W
- 1
- INV() denotes matrix inversion. W is an unused variable, included for consistent matrix notation.