multTrsf(3)

NAME
multTrsf, multLiTrsf, multRiTrsf, invertTrsf, identTrsf, unitTrsf -- RCCL routines to multiply, invert, and initialize transforms.

USAGE
#include <robotTypes.h> /* included as part of <rccl.h> */

TRSF *multTrsf (tr, t1, t2)
  TRSF *tr, *t1, *t2;

TRSF *multLiTrsf (tr, t1, t2)
  TRSF *tr, *t1, *t2;

TRSF *multRiTrsf (tr, t1, t2)
  TRSF *tr, *t1, *t2;

TRSF *invertTrsf (tr, t1)
  TRSF *tr, *t1;

TRSF *identTrsf (tr)
  TRSF *tr;

TRSF *unitTrsf (tr)
  TRSF *tr;

ARGUMENTS

tr --
    Result transform (and input transform in the case of "identTrsf()" and unitTrsf()).

t1, t2 --
    Input transforms.

DESCRIPTION
These routines perform operations on the 4X4 homogeneous transform data type TRSF.

multTrsf() computes the product
                TR = T1 T2 .

multLiTrsf() computes the product
                       -1
                TR = T1   T2 .

multRiTrsf() computes the product
                          -1
                TR = T1 T2 .

invertTrsf() computes the inverse of a transform:
                       -1
                TR = T1 .

identTrsf() sets tr to the identity transform.

unitTrsf() normalizes the n, o, and a rotation vectors of tr according to the following algorithm:
                a = a / |a|
                n = (o X a) / |o X a|
                o = a X n

Each of these routines returns a pointer to its result argument.

SEE ALSO
xyzToTrsf(3), vaoToTrsf(3), rotToTrsf(3), eulToTrsf(3), rpyToTrsf(3).