Compose homogeneous affine matrix from CMTK registration parameters

cmtkparams2affmat(
  params = NULL,
  tx = 0,
  ty = 0,
  tz = 0,
  rx = 0,
  ry = 0,
  rz = 0,
  sx = 1,
  sy = 1,
  sz = 1,
  shx = 0,
  shy = 0,
  shz = 0,
  cx = 0,
  cy = 0,
  cz = 0,
  legacy = NA
)

Arguments

params

5x3 matrix of CMTK registration parameters or list of length 5.

tx, ty, tz

Translation along x, y and z axes (default 0)

rx, ry, rz

Rotation about x, y and z axes (in degrees, default 0)

sx, sy, sz

Scale for x, y and z axes (default 1)

shx, shy, shz

Shear for x,y,z axes (default 0)

cx, cy, cz

Centre for rotation

legacy

Whether to assume that parameters are in the format used by CMTK <=2.4.0 (default value NA implies FALSE, see details).

Value

4x4 homogeneous affine transformation matrix

Details

If the legacy parameter is not set explicitly, then it will be set to TRUE if params has a version attribute <2.4 or FALSE otherwise.

translation and centre components are assumed to be in physical coordinates.

See also

Other cmtk-geometry: affmat2cmtkparams(), cmtk.dof2mat(), cmtk.mat2dof()