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

  
 
  

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

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

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

     degreesNumber 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 rotation 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  rota-
     tion 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 matrix 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 default,
     the rotation matrix is post-multiplied (M = M*R where M is the current  ma-
     trix  and	R  is the rotation matrix).  The VP_CONCAT_MODE option to vpSeti
     can be used to select pre-multiplication.

STATE VARIABLES
     The current matrix concatenation parameters can be retrieved with the  fol-
     lowing  state  variable  codes  (see vpGeti(3)): VP_CURRENT_MATRIX, VP_CON-
     CAT_MODE.

ERRORS
     The normal return value is VP_OK.	The following error return value is pos-
     sible:

     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.1.quarterly>

home | help