#include <Rot3by3.h>
Inheritance diagram for OSCAR::Rot3by3:

Public Methods | |
| Rot3by3 () | |
| Rot3by3 (const double *f, const String &name=String()) | |
| Rot3by3 (const Vector &v, OSCARError &err=DUMMY_ERROR(noError), const String &name=String()) | |
| Rot3by3 (const Rot3by3 &rhs) | |
| Rot3by3 (const Matrix &rhs) | |
| virtual | ~Rot3by3 () |
| Rot3by3 & | operator= (const Rot3by3 &rhs) |
| Rot3by3 & | operator= (const Matrix &rhs) |
| bool | Get (Orientation &orient) const |
| bool | Get (Xform &xf) const |
| bool | Get (SpatialXform &spatial) const |
| bool | Get (Quaternion &quat) |
| bool | Get (HandPose &hp) const |
| bool | Get (Vector3 &axis, double &angle, AngleUnits angUnits=Radians) const |
| bool | Set (const Orientation &orient) |
| bool | Set (const Xform &xf) |
| bool | Set (const SpatialXform &spatial) |
| bool | Set (const Quaternion &quat) |
| bool | Set (const HandPose &hp) |
| bool | Set (const Vector3D &axis, double angle, AngleUnits angUnits=Radians) |
| Rot3by3 | operator * (const Rot3by3 &rhs) const |
| Vector3 | operator * (const Vector3 &rhs) const |
| Rot3by3 | t () const |
| void | t (Rot3by3 &transpose) const |
| void | MultiplyWithTranspose (Rot3by3 &rrt) const |
| Rot3by3 | operator- () const |
| bool | ToPumaOAT (Vector3 &end_orient) const |
| bool | IsValid () const |
| bool | Normalize () |
Protected Methods | |
| bool | toEulerXYZ (Orientation &end_orient) const |
| bool | toEulerZYZ (Orientation &end_orient) const |
| bool | toFixedXYZ (Orientation &end_orient) const |
|
|
Constructor. Creates a 3x3 Rot3by3 initialized it to identity |
|
||||||||||||
|
Constructor. Creates a 3x3 Rot3by3 initialized by an array of doubles, f. This constructor has two behaviors: -- f == 0 (Default): Constructs an identity matrix. -- f != 0: Constructs a matrix from the first 9 values of f using a row pattern. The first row is initialized with the first 3 values in the array f. Behavior is not defined if f contains fewer than 9 elements. USE THIS BEHAVIOR WITH CARE, as the constructor does not check values in the array to ensure the properties of a rotation matrix are preserved. |
|
||||||||||||||||
|
Constructor. Creates a 3x3 Rot3by3 initialized with first 9 elements from an Vector using a row pattern, i.e. the first row is the first 3 elements of the Vector. If the Vector has fewer than 9 elements than the Rot3by3 an OSCARError is set. USE THIS CONSTRUCTOR WITH CARE, as the constructor does not check values in the Vector to ensure the properties of a rotation matrix are preserved.
|
|
|
Copy Constructor. This is the Copy Constructor for an object of type Rot3by3. Use this to construct an Rot3by3 object from an existing Rot3by3 object.
|
|
|
Copy Constructor. Constructs an Rot3by3 object from an existing Matrix object. USE THIS CONSTRUCTOR WITH CARE, as the constructor does not check values in the Matrix to ensure the properties of a rotation matrix are preserved.
|
|
|
Virtual Destructor. This is the Destructor for an object of type Rot3by3. |
|
||||||||||||||||
|
Get an Equivalent Axis representation from an Rot3by3 object. This method is used to get an equivalent axis representation from an Rot3by3 object.
|
|
|
Get an HandPose representation from an Rot3by3 object. This method is used to get an equivalent HandPose object from an Rot3by3 object.
|
|
|
Get an Quaternion representation from an Rot3by3 object. This method is used to get an Quaternion representation from an Rot3by3 object. This method converts a 3x3 rotation matrix to a 4 element quaternion. The conversion methodology used is from "Introduction to Robotics Mechanics and Controls, by John Craig."
|
|
|
Get an SpatialXform representation from an Rot3by3 object. This method is used to get an equivalent SpatialXform object from a RRot3by3 object.
|
|
|
Get an Xform representation from an Rot3by3 object object. This method is used to get an equivalent Xform object from a Rot3by3 object.
|
|
|
Get an Orientation representation from an Rot3by3 object. This method is used to get an equivalent 3x1 Orientation object from a Rot3by3 object.
|
|
|
Checks if this rotation matrix is valid (i.e. orthonormal).
|
|
|
Multiply a Rot3by3 object by its Transpose. Multiplying a Rot3by3 object by its Transpose, results in an Rot3by3 identity matrix.
|
|
|
Normalizes a rotation matrix. Rotation matrices can become illformed due to numerical drift resulting from multiple operations on them. This method converts the rotation matrix to a quaternion and normalizes the quaternion and converts back to the rotation matrix.
|
|
|
Overloaded * operator. Overloaded * operator. This operator multiplies the calling Rot3by3 object by Vector3 object, which returns an Vector3 object.
|
|
|
Overloaded * operator. Overloaded * operator. This operator multiplies the calling Rot3by3 object by another Rot3by3 object.
|
|
|
Overloaded operator-. Returns an Rot3by3 in which result[i][j] = -this[i][j].
Reimplemented from OSCAR::Matrix. |
|
|
Assignment Operator. This is the Assignment Operator for an object of type Rot3by3. USE THIS OPERATOR WITH CARE, as the operator does not check values in the Matrix to ensure the properties of a rotation matrix are preserved.
Reimplemented from OSCAR::FixedSizeMatrix< 3, 3 >. |
|
|
Assignment Operator. This is the Assignment Operator for an object of type Rot3by3.
|
|
||||||||||||||||
|
Set an Rot3by3 object based on an equivalent axis representation. This method is used to set an Rot3by3 object based on an equivalent axis representation.
|
|
|
Set an Rot3by3 object based on an HandPose object. This method is used to set an Rot3by3 object based on the rotational elements of an HandPose.
|
|
|
Set the elements of the 3x3 rotation matrix based on the input 4 element quaternion. This method is used to set the elements of the 3x3 rotation matrix based on the input 4 element quaternion. The conversion methodology used is from "Introduction to Robotics Mechanics and Controls, by John Craig."
|
|
|
Set an Rot3by3 object based on an SpatialXform object. This method is used to set an Rot3by3 object based on the rotational elements of an SpatialXform.
|
|
|
Set an Rot3by3 object based on an Xform object. This method is used to set an Rot3by3 object based on the rotational elements of an Xform.
|
|
|
Set an Orientation representation to an Rot3by3 object. This method is used to set an equivalent 3x1 Orientation object to the Rot3by3 object.
|
|
|
Get the Transpose of an Rot3by3 object. This method is used to get the transpose of an Rot3by3 object.
|
|
|
Get the Transpose of an Rot3by3 object. Returns an Rot3by3 object that is the transpose of the calling object.
Reimplemented from OSCAR::Matrix. |
|
|
|
|
|
|
|
|
|
|
|
|
| RRG Homepage | OSCAR Overview | OSCAR Tutorials | Simulations |