Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ gluproject(3G) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought



gluProject(3G)                 OpenGL Reference                 gluProject(3G)



NAME
     gluProject - map object coordinates to window coordinates


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


PARAMETERS
     objX, objY, objZ
                     Specify the object coordinates.

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

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

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

     winX, winY, winZ
                     Return the computed window coordinates.

DESCRIPTION
     gluProject transforms the specified object coordinates into window
     coordinates using model, proj, and view. The result is stored in winX,
     winY, and winZ. A return value of GLTRUE indicates success, a return
     value of GLFALSE indicates failure.

     To compute the coordinates, let v=(objX,objY,objZ,1.0) represented as a
'
matrix with 4 rows and 1 column. Then gluProject computes v as follows:
'
v = P x M x v
where P is the current projection matrix proj, M is the current modelview matrix model (both represented as 4x4 matrices in column-major order) and 'x' represents matrix multiplication. The window coordinates are then computed as follows:
'
winX = view(0) + view(2) * (v (0) + 1) / 2
Page 1


gluProject(3G)                 OpenGL Reference                 gluProject(3G)



'
winY = view(1) + view(3) * (v (1) + 1) / 2
'
winZ = (v (2) + 1) / 2
SEE ALSO glGet, gluUnProject Page 2

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026