Scroll to navigation

vpScale(3) Library Functions Manual vpScale(3)

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

VolPack context from vpCreateContext.
Scale factor for the X dimension.
Scale factor for the Y dimension.
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)

VolPack