Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
GLUPROJECT()							  GLUPROJECT()

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 glGetIntegerv
		       call).

       winX, winY, winZ
		       Return the computed window coordinates.

DESCRIPTION
       gluProject transforms the specified object coordinates into window  co-
       ordinates  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 com-
       putes $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 .EN

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

SEE ALSO
       glGet, gluUnProject

								  GLUPROJECT()

NAME | C SPECIFICATION | PARAMETERS | DESCRIPTION | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=gluProject&sektion=3&manpath=FreeBSD+12.1-RELEASE+and+Ports>

home | help