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

FreeBSD Manual Pages

  
 
  

home | help
vpRotate(3)		   Library Functions Manual		   vpRotate(3)

NAME
       vpRotate	- multiply the current transformation matrix by	a rotation ma-
       trix

SYNOPSIS
       #include	<volpack.h>

       vpResult
       vpRotate(vpc, axis, degrees)
	   vpContext *vpc;
	   int axis;
	   double degrees;

ARGUMENTS
       vpc    VolPack context from vpCreateContext.

       axis   Rotation axis code (VP_X_AXIS, VP_Y_AXIS or VP_Z_AXIS).

       degrees
	      Number of	degrees	to rotate.

DESCRIPTION
       vpRotate	 is  used  to  multiply	the current transformation matrix by a
       4-by-4 rotation matrix.	The rotation axis must be  one	of  the	 three
       principal  viewing  axes	 and  is  specified  with one of the following
       codes: VP_X_AXIS	     X axis
       VP_Y_AXIS      Y	axis
       VP_Z_AXIS      Z	axis The rotation angle	is specified  in  degrees.   A
       positive	 angle indicates a clockwise rotation when looking towards the
       positive	direction along	the axis.  For an X-axis rotation,  the	 rota-
       tion matrix is:	   1	   0	   0	   0
	   0	cos(d)	sin(d)	   0
	   0	-sin(d)	cos(d)	   0
	   0	   0	   0	   1  where d stands for the degrees argument.
       For    a	   Y-axis    rotation,	   the	   rotation	matrix	   is:
	cos(d)	   0	-sin(d)	   0
	   0	   1	   0	   0
	sin(d)	   0	cos(d)	   0
	   0	   0	   0	   1  For  a Z-axis rotation, the rotation ma-
       trix is:	 cos(d)	 sin(d)	    0	    0
	-sin(d)	cos(d)	   0	   0
	   0	   0	   1	   0
	   0	   0	   0	   1

       Use vpCurrentMatrix to set the current transformation matrix.   By  de-
       fault,  the  rotation matrix is post-multiplied (M = M*R	where M	is the
       current matrix and R is the rotation matrix).  The  VP_CONCAT_MODE  op-
       tion to vpSeti can be used to select pre-multiplication.

STATE VARIABLES
       The  current  matrix concatenation parameters can be retrieved with the
       following state	variable  codes	 (see  vpGeti(3)):  VP_CURRENT_MATRIX,
       VP_CONCAT_MODE.

ERRORS
       The  normal return value	is VP_OK.  The following error return value is
       possible:

       VPERROR_BAD_OPTION
	      The axis argument	is invalid.

SEE ALSO
       VolPack(3), vpCreateContext(3), vpCurrentMatrix(3)

VolPack								   vpRotate(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=volpack-Rotate&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help