#include <vctRodriguezRotation3Base.h>
Inheritance diagram for vctRodriguezRotation3Base< _containerType >:


This representation is based on a vector. The direction of the vector determines the axis of rotation and its norm defines the amplitude of the rotation.
This class is templated by the element type.
| _elementType | The type of elements. |
Definition at line 85 of file vctRodriguezRotation3Base.h.
| vctRodriguezRotation3Base< _containerType >::vctRodriguezRotation3Base | ( | ) | [inline] |
Default constructor. Sets the rotation to (0, 0, 0).
Definition at line 120 of file vctRodriguezRotation3Base.h.
| vctRodriguezRotation3Base< _containerType >::vctRodriguezRotation3Base | ( | const vctFixedSizeConstVectorBase< DIMENSION, __stride, value_type, __dataPtrType > & | axis | ) | [inline] |
Constructor from a 3D vector.
| axis | A vector of size 3. |
Definition at line 128 of file vctRodriguezRotation3Base.h.
| vctRodriguezRotation3Base< _containerType >::vctRodriguezRotation3Base | ( | value_type | x, | |
| value_type | y, | |||
| value_type | z | |||
| ) | [inline] |
Constructor from three elements: x, y, and z
Definition at line 133 of file vctRodriguezRotation3Base.h.
| void vctRodriguezRotation3Base< _containerType >::ThrowUnlessIsNormalized | ( | void | ) | const throw (std::runtime_error) [inline, protected] |
Throw an exception unless this rotation is normalized.
Definition at line 100 of file vctRodriguezRotation3Base.h.
| void vctRodriguezRotation3Base< _containerType >::ThrowUnlessIsNormalized | ( | const _inputType & | input | ) | const throw (std::runtime_error) [inline, protected] |
Throw an exception unless the input is normalized.
| input | An object with IsNormalized method. |
Definition at line 111 of file vctRodriguezRotation3Base.h.
| static CISST_EXPORT const ThisType& vctRodriguezRotation3Base< _containerType >::Identity | ( | ) | [static] |
Const reference to the identity. In this case, a null vector.
| ThisType& vctRodriguezRotation3Base< _containerType >::NormalizedSelf | ( | void | ) | [inline] |
Norm lesser than 2 * PI.
Definition at line 302 of file vctRodriguezRotation3Base.h.
| ThisType& vctRodriguezRotation3Base< _containerType >::NormalizedOf | ( | const ThisType & | otherRotation | ) | [inline] |
See NormalizedSelf
Definition at line 313 of file vctRodriguezRotation3Base.h.
| ThisType vctRodriguezRotation3Base< _containerType >::Normalized | ( | void | ) | const [inline] |
See NormalizedSelf
Definition at line 320 of file vctRodriguezRotation3Base.h.
Referenced by vctQuaternionRotation3Base< vctFixedSizeVector< double, 4 > >::FromNormalized(), vctAxisAngleRotation3< _elementType >::FromNormalized(), and vctMatrixRotation3Base< vctFixedSizeMatrix< double, 3, 3, _rowMajor > >::FromNormalized().
| bool vctRodriguezRotation3Base< _containerType >::IsNormalized | ( | value_type | CMN_UNUSED(tolerance) = TypeTraits::Tolerance() |
) | const [inline] |
Test if this rotation is normalized. This methods always return "true" since any angle is considered valid. This method is provided mostly for API completion.
| tolerance | Tolerance. This variable is not used as this rotation is always normalized. The tolerance parameter is provided just to have the same signature as for other transformations. |
Definition at line 335 of file vctRodriguezRotation3Base.h.
| bool vctRodriguezRotation3Base< _containerType >::AlmostEquivalent | ( | const ThisType & | other, | |
| value_type | tolerance = TypeTraits::Tolerance() | |||
| ) | const [inline] |
Return true if this rotation is equivalent to the other rotation, up to the given tolerance. Rotations may be effectively equivalent if their unit axis are almost equal and the angles are equal modulo 2 PI.
The tolerance factor is used to compare each of the elements of the difference vector.
Definition at line 348 of file vctRodriguezRotation3Base.h.