gluProject.3G man page

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);


objX, objY, objZ

Specify the object coordinates.


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


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


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

winX, winY, winZ

Return the computed window coordinates.


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 GLU_TRUE indicates success, a return value of GLU_FALSE 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 × M × v

where P is the current projection matrix proj and M is the current modelview matrix model (both represented as 4 × 4 matrices in column-major order).

The window coordinates are then computed as follows:

winX = view ⁡ 0 + view ⁡ 2 × v ″ ⁡ 0 + 1 2.PP winY = view ⁡ 1 + view ⁡ 3 × v ″ ⁡ 1 + 1 2.PP winZ = v ″ ⁡ 2 + 1 2

See Also

gluUnProject(), glGet()




opengl.org OpenGL Manual 02/04/2016