|
cisst-saw
|
Define a rotation based on an angle for a space of dimension 2. More...
#include <vctAngleRotation2.h>
Public Types | |
| enum | { DIMENSION = 2 } |
| typedef vctAngleRotation2 | ThisType |
| typedef cmnTypeTraits< AngleType > | TypeTraits |
Public Member Functions | |
| VCT_CONTAINER_TRAITS_TYPEDEFS (double) | |
| vctAngleRotation2 () | |
Constructors with normalization test. | |
These constructors will check that the input is valid, i.e. normalized. If the input is not normalized, an exception (of type
| |
| vctAngleRotation2 (const AngleType angle) CISST_THROW(std | |
| template<class _containerType> | |
| vctAngleRotation2 (const vctMatrixRotation2Base< _containerType > &matrixRotation) CISST_THROW(std | |
Conversion from normalized input. | |
These methods will check that the input is normalized. If the input is not normalized, an exception (
| |
| ThisType & | From (const AngleType angle) CISST_THROW(std |
| template<class _containerType> | |
| ThisType & | From (const vctMatrixRotation2Base< _containerType > &matrixRotation) CISST_THROW(std |
Conversion and normalization. | |
These method will accept any input and attempt to either normalize the input and then convert or convert and then normalize the quaternion itself. | |
| ThisType & | FromNormalized (const AngleType angle) |
| template<class _containerType> | |
| ThisType & | FromNormalized (const vctMatrixRotation2Base< _containerType > &matrixRotation) |
Conversion. | |
These method don't check if the input is normalized nor try to normalize the results. They should be used with caution since the resulting rotation (in this case a quaternion) might not be normalized. | |
| ThisType & | FromRaw (const AngleType angle) |
| template<class _containerType> | |
| ThisType & | FromRaw (const vctMatrixRotation2Base< _containerType > &matrixRotation) |
| ThisType & | InverseSelf (void) |
| ThisType & | InverseOf (const ThisType &otherRotation) |
| ThisType | Inverse (void) const |
| ThisType & | NormalizedSelf (void) |
| ThisType & | NormalizedOf (const ThisType &otherRotation) |
| ThisType | Normalized (void) const |
| bool | IsNormalized (AngleType CMN_UNUSED(tolerance)=TypeTraits::Tolerance()) const |
| std::string | ToString (void) const |
| void | ToStream (std::ostream &outputStream) const |
| void | ToStreamRaw (std::ostream &outputStream, const char CMN_UNUSED(delimiter)=' ', bool headerOnly=false, const std::string &headerPrefix="") const |
| void | SerializeRaw (std::ostream &outputStream) const |
| void | DeSerializeRaw (std::istream &inputStream) |
Protected Member Functions | |
| void | ThrowUnlessIsNormalized (void) const CISST_THROW(std |
| template<class _inputType> | |
| void | ThrowUnlessIsNormalized (const _inputType &input) const CISST_THROW(std |
Protected Attributes | |
| AngleType | AngleMember |
Constructors without normalization test | |
These constructors will either assume that the input is normalized or normalize the input (a copy of it, if required) based on the last parameter provided.
| |
| vctAngleRotation2 (const AngleType angle, bool normalizeInput) | |
| template<class _containerType> | |
| vctAngleRotation2 (const vctMatrixRotation2Base< _containerType > &matrixRotation, bool normalizeInput) | |
| const AngleType & | Angle (void) const |
| AngleType & | Angle (void) |
| static CISST_EXPORT const ThisType & | Identity () |
Define a rotation based on an angle for a space of dimension 2.
This class is not templated by the element type. It contains an angle of type AngleType.
| typedef cmnTypeTraits<AngleType> vctAngleRotation2::TypeTraits |
|
inline |
Default constructor. Sets the angle to zero.
|
inlineexplicit |
Constructor from an angle (in radians).
|
inline |
Constructor from a rotation matrix.
|
inline |
Constructor from an angle (in radians).
|
inline |
Constructor from a rotation matrix.
|
inline |
|
inline |
|
inline |
Binary deserialization
|
inline |
Conversion from an angle (in radians).
|
inline |
Conversion from a rotation matrix.
|
inline |
Conversion from an angle (in radians).
|
inline |
Conversion from a rotation matrix.
|
inline |
Conversion from an angle (in radians).
|
inline |
Conversion from a rotation matrix.
|
static |
Const reference to the identity. In this case, the angle is set to zero.
|
inline |
Create and return by copy the inverse of this rotation. This method is not the most efficient since it requires a copy. See also InverseSelf().
Set this rotation as the inverse of another one. See also InverseSelf().
|
inline |
Inverse this angle rotation. This methods assumes that the angle is betweem 0 and 2 * PI. The angle is set to 2 * PI minus the previous value.
|
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. |
|
inline |
Returns the normalized version of this rotation. This method returns a copy of the normalized rotation and does not modify this rotation. See also NormalizedSelf().
Sets this rotation as the normalized version of another one.
| otherRotation | Angle rotation used to compute the normalized rotation. |
|
inline |
Normalizes the angle. This method ensures that the angle is between 0 and 2 * PI.
|
inline |
Binary serialization
|
inlineprotected |
Throw an exception unless the input is normalized.
| input | An object with IsNormalized method. |
|
inlineprotected |
Throw an exception unless this rotation is normalized.
|
inline |
Print the matrix in a human readable format
|
inline |
Print in machine processable format
|
inline |
| vctAngleRotation2::VCT_CONTAINER_TRAITS_TYPEDEFS | ( | double | ) |
|
protected |