NAME
vpScale - multiply the current transformation matrix by a scaling matrix
SYNOPSIS
#include <volpack.h>
vpResult
vpScale(vpc, sx, sy, sz)
-
vpContext *vpc;
-
double sx
-
double sy
-
double sz
ARGUMENTS
- vpc
-
VolPack context from vpCreateContext.
- sx
-
Scale factor for the X dimension.
- sy
-
Scale factor for the Y dimension.
- sz
-
Scale factor for the Z dimension.
DESCRIPTION
vpScale is used to multiply the current transformation matrix by a 4-by-4 scaling matrix. The arguments specify independent scale factors for each of the three cartesian axes. The scaling matrix is:
-
sx 0 0 0
0 sy 0 0
0 0 sz 0
0 0 0 1
Use vpCurrentMatrix to set the current transformation matrix. By default, the scaling matrix is post-multiplied (M = M*S where M is the current matrix and S is the scaling 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 following state variable codes (see vpGeti(3)): VP_CURRENT_MATRIX, VP_CONCAT_MODE.
ERRORS
The return value is always VP_OK.
SEE ALSO
VolPack(3), vpCreateContext(3), vpCurrentMatrix(3)