Scale(3)

multiply the current transformation matrix by a

Section 3 libvolpack1-dev bookworm source

Description

vpScale

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.FA double sy.FA double sz.FE

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)

See Also

  • VolPack(3)
  • vpCreateContext(3)
  • vpCurrentMatrix(3)