Detailed DescriptionModule to manage symbolic homogeneous transforms in R^3.
Definition in file shtransform.h.
Typedef Documentation
A 4x4 matrix representing a homogenous matrix in R^3.
Definition at line 37 of file shtransform.h. Function Documentation
Initializes a homogeneous transform with the identity matrix.
Definition at line 43 of file shtransform.c. References AXIS_H, SetEquationValue(), and SHTransformInit(). Referenced by SHTransformInverse(), SHTransformRx(), SHTransformRy(), SHTransformRz(), SHTransformTx(), SHTransformTxyz(), SHTransformTy(), SHTransformTz(), SHTransformVarDisplacementAlongVector(), SHTransformVarTx(), SHTransformVarTxyz(), SHTransformVarTy(), and SHTransformVarTz().
Initializes a symbolic homogeneous transform from 3D symbolic vectors. No test is done to check the orthonomality of the give vectors. The caller must take care of this. The third column of the matrix is computed as the cross product of x and y.
Definition at line 53 of file shtransform.c. References AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, CopyEquation(), CrossProductEqVectors(), DeleteEqVector(), DIM_SP, GetEqVectorElement(), InitEquation(), NEW, and SetEquationValue().
Initializes a homogeneous transform from another transform.
Definition at line 90 of file shtransform.c. References CopyEquation(), DIM_SP, and NEW. Referenced by SHTransformAdd(), SHTransformPostCtProduct(), SHTransformPreCtProduct(), SHTransformProduct(), and SHTransformTranspose().
Initializes a symbolic homogeneous transform as a constant translation along X.
Definition at line 107 of file shtransform.c. References AXIS_H, AXIS_X, SetEquationValue(), and SHTransformIdentity(). Referenced by SHTransformCreate().
Initializes a homogeneous transform as a variable translation along X.
Definition at line 113 of file shtransform.c. References AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_X, DeleteMonomial(), InitMonomial(), NFUN, and SHTransformIdentity(). Referenced by SHTransformVarCreate().
Initializes a symbolic homogeneous transform as a constant translation along Y.
Definition at line 125 of file shtransform.c. References AXIS_H, AXIS_Y, SetEquationValue(), and SHTransformIdentity(). Referenced by SHTransformCreate().
Initializes a symbolic homogeneous transform as a variable translation along Y.
Definition at line 131 of file shtransform.c. References AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_Y, DeleteMonomial(), InitMonomial(), NFUN, and SHTransformIdentity(). Referenced by SHTransformVarCreate().
Initializes a homogeneous transform as a constant translation along Z.
Definition at line 143 of file shtransform.c. References AXIS_H, AXIS_Z, SetEquationValue(), and SHTransformIdentity(). Referenced by SHTransformCreate().
Initializes a homogeneous transform as a variable translation along Z.
Definition at line 149 of file shtransform.c. References AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_Z, DeleteMonomial(), InitMonomial(), NFUN, and SHTransformIdentity(). Referenced by SHTransformVarCreate().
Initializes a homogeneous transform as a constant translation.
Definition at line 161 of file shtransform.c. References AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, SetEquationValue(), and SHTransformIdentity().
Initializes a homogeneous transform as a variable translation.
Definition at line 169 of file shtransform.c. References AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, DeleteMonomial(), InitMonomial(), NFUN, ResetMonomial(), and SHTransformIdentity().
Initializes a homogeneous transform as a scaled variable translation. This is basically used define a scaled displacements along a given vector.
Definition at line 191 of file shtransform.c. References AddCt2Monomial(), AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, DeleteMonomial(), InitMonomial(), NFUN, ResetMonomial(), and SHTransformIdentity().
Initializes a homogeneous transform as a constant rotation about X.
Definition at line 215 of file shtransform.c. References AXIS_Y, AXIS_Z, SetEquationValue(), and SHTransformIdentity(). Referenced by SHTransformCreate().
Initializes a homogeneous transform as a constant rotation about X.
Definition at line 231 of file shtransform.c. References AddCt2Monomial(), AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, COSV, DeleteMonomial(), InitMonomial(), SetEquationValue(), SHTransformInit(), and SINV. Referenced by SHTransformVarCreate().
Initializes a homogeneous transform as a constant rotation about Y.
Definition at line 256 of file shtransform.c. References AXIS_X, AXIS_Z, SetEquationValue(), and SHTransformIdentity(). Referenced by SHTransformCreate().
Initializes a homogeneous transform as a constant rotation about Y.
Definition at line 272 of file shtransform.c. References AddCt2Monomial(), AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, COSV, DeleteMonomial(), InitMonomial(), SetEquationValue(), SHTransformInit(), and SINV. Referenced by SHTransformVarCreate().
Initializes a homogeneous transform as a constant rotation about Z.
Definition at line 297 of file shtransform.c. References AXIS_X, AXIS_Y, SetEquationValue(), and SHTransformIdentity(). Referenced by SHTransformCreate().
Initializes a homogeneous transform as a constant rotation about Z.
Definition at line 313 of file shtransform.c. References AddCt2Monomial(), AddMonomial(), AddVariable2Monomial(), AXIS_H, AXIS_X, AXIS_Y, AXIS_Z, COSV, DeleteMonomial(), InitMonomial(), SetEquationValue(), SHTransformInit(), and SINV. Referenced by SHTransformVarCreate().
Initializes a homogeneous transform as xonstant translation/rotation in a given degree of freedom.
Definition at line 338 of file shtransform.c. References RX, RY, RZ, SHTransformRx(), SHTransformRy(), SHTransformRz(), SHTransformTx(), SHTransformTy(), SHTransformTz(), TX, TY, and TZ.
Initializes a homogeneous transform as variable translation/rotation in a given degree of freedom.
Definition at line 363 of file shtransform.c. References RX, RY, RZ, SHTransformVarRx(), SHTransformVarRy(), SHTransformVarRz(), SHTransformVarTx(), SHTransformVarTy(), SHTransformVarTz(), TX, TY, and TZ.
Gets an element from a homogeneous transform.
Definition at line 388 of file shtransform.c.
Product of two homogeneous transforms.
Definition at line 398 of file shtransform.c. References AccumulateEquations(), DeleteEquation(), DIM_SP, ProductEquations(), SHTransformCopy(), SHTransformDelete(), and SHTransformInit(). Referenced by SHTransformInverse().
Product of constnat and a symbolic homogeneous transforms.
Definition at line 424 of file shtransform.c. References AccumulateEquations(), DIM_SP, HTransformGetElement(), SHTransformCopy(), SHTransformDelete(), and SHTransformInit().
Product of a symbolic and a constant homogeneous transforms.
Definition at line 448 of file shtransform.c. References AccumulateEquations(), DIM_SP, HTransformGetElement(), SHTransformCopy(), SHTransformDelete(), and SHTransformInit().
Addition of two homogeneous transforms.
Definition at line 472 of file shtransform.c. References AccumulateEquations(), DIM_SP, SHTransformCopy(), SHTransformDelete(), and SHTransformInit().
Addition of a homogeneous transform.
Definition at line 492 of file shtransform.c. References AccumulateEquations(), AXIS_H, CopyEquation(), DeleteEquation(), DIM_SP, SetEquationValue(), SHTransformDelete(), SHTransformIdentity(), SHTransformInit(), and SHTransformProduct().
Transpose of a homogeneous transform. Note that, in general the transpose of a homogeneous transform is not a homogeneous transform.
Definition at line 521 of file shtransform.c. References CopyEquation(), DIM_SP, NEW, SHTransformCopy(), and SHTransformDelete().
Multiply a symbolic homogeneous transform and a vector.
Definition at line 543 of file shtransform.c. References AccumulateEquations(), AXIS_H, CopyEquation(), and DIM_SP.
Applies the rotation encoded in a homogeneous transform to a vector (i.e., rotates the vector).
Definition at line 556 of file shtransform.c. References AccumulateEquations(), DIM_SP, and InitEquation().
Evaluates a symbolic homogeneus transform to produce a constant homogeneous transform.
Definition at line 569 of file shtransform.c. References DIM_SP, EvaluateWholeEquation(), HTransformIdentity(), and HTransformSetElement().
Prints the a homogeneous transform to a stream that can be stdtout.
Definition at line 586 of file shtransform.c. References DIM_SP, and PrintMonomials().
Deletes the information stored in the TSHTransform and frees the allocated memory space.
Definition at line 600 of file shtransform.c. References DeleteEquation(), and DIM_SP. Referenced by SHTransformAdd(), SHTransformInverse(), SHTransformPostCtProduct(), SHTransformPreCtProduct(), SHTransformProduct(), and SHTransformTranspose(). |
Follow us!