gluUnProject() gluUnProject()
gluUnProject - map window coordinates to object coordinates
GLint gluUnProject(
GLdouble winX,
GLdouble winY,
GLdouble winZ,
const GLdouble *model,
const GLdouble *proj,
const GLint *view,
GLdouble* objX,
GLdouble* objY,
GLdouble* objZ );
Specify the window coordinates to be mapped. Specifies
the modelview matrix (as from a glGetDoublev() call).
Specifies the projection matrix (as from a glGetDoublev()
call). Specifies the viewport (as from a glGetIntegerv()
call). Returns the computed object coordinates.
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]) / view[2]) -1 objX
(2(winY - view[1]) / view[3]) -1 objY = INV(PM) objZ
2(winZ) -1 W 1
INV() denotes matrix inversion. W is an unused variable,
included for consistent matrix notation.
glGet(3), gluProject(3)
gluUnProject()
[ Back ] |