fgluUnProject4(3G) OpenGL Reference fgluUnProject4(3G)NAMEfgluUnProject4 - map window and clip coordinates to object coordinates
FORTRAN SPECIFICATION
INTEGER*4 fgluUnProject4( REAL*4 winX,
REAL*4 winY,
REAL*4 winZ,
REAL*4 clipW,
CHARACTER*8 model,
CHARACTER*8 proj,
CHARACTER*8 view,
REAL*4 near,
REAL*4 far,
CHARACTER*8 objX,
CHARACTER*8 objY,
CHARACTER*8 objZ,
CHARACTER*8 objW )
PARAMETERS
winX, winY, winZ
Specify the window coordinates to be mapped.
clipW Specify the clip w coordinate 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).
near, far Specifies the near and far planes (as from a glGetDoublev
call).
objX, objY, objZ, objW
Returns the computed object coordinates.
DESCRIPTIONfgluUnProject4 maps the specified window coordinates winX, winY and winZ
and its clip w coordinate clipW into object coordinates (objX, objY,
objZ, objW) using model, proj and view. clipW can be other than 1 as for
vertices in glFeedbackBuffer when data type GL_4D_COLOR_TEXTURE is
returned. This also handles the case where the near and far planes are
different from the default, 0 and 1, respectively. A return value of
GL_TRUE indicates success; a return value of GL_FALSE indicates failure.
To compute the coordinates (objX, objY, objZ and objW), fgluUnProject4
multiplies the normalized device coordinates by the inverse of model*proj
as follows:
Page 1
fgluUnProject4(3G) OpenGL Reference fgluUnProject4(3G)
( objX ) = INV(PM)(_________________ - 1 )
INV() denotes matrix inversion.
fgluUnProject4 is equivalent to fgluUnProject when clipW is 1, near is 0
and far is 1.
NOTESfgluUnProject4 is available only if the GLU version is 1.3 or greater.
SEE ALSO
glGet, glFeedbackBuffer, fgluProject, fgluUnProject
Page 2