gluProject

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
GLUPROJECT(3G)						       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 )

       delim $$

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 glGetInte-
		       gerv 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 GL_TRUE indicates success, a  return
       value of GL_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 sup prime$ as follows:

       v sup prime ~=~ P ~times~ M ~times~ v

       where  $P$  is  the current projection matrix proj, $M$ is the current
       modelview matrix model (both represented as $4 times  4$	 matrices  in
       column-major order) and ’$times$’ represents matrix multiplication.

       The window coordinates are then computed as follows:

       "winX" ~=~ "view" (0) ~+~ "view" (2) ~*~ (v sup prime (0) ~+~ 1)~/~2

       "winY" ~=~ "view" (1) ~+~ "view" (3)~*~(v sup prime (1) ~+~ 1)~/~2

       "winZ" ~=~ (v sup prime (2)  ~+~ 1)~/~ 2


SEE ALSO
       glGet(3G), gluUnProject(3G)




							       GLUPROJECT(3G)