A 3x3 rotation matrix. More...
#include <RotMatrix.h>
Public Member Functions | |
| RotMatrix () | |
| Default constructor generates a unit 3x3 matrix. | |
| RotMatrix (const RotMatrix &other) | |
| The copy constructor copies. | |
| RotMatrix (const Euler &other) | |
| Make from an Euler. | |
| RotMatrix (const Euler &other, Int ax0, Int ax1, Int ax2) | |
| Make from an Euler around specified axes. | |
| RotMatrix & | operator= (const RotMatrix &other) |
| Copy assignment. | |
| ~RotMatrix () | |
| Destructor. | |
| RotMatrix & | operator*= (const RotMatrix &other) |
| The multiplication operations generate matrix products. | |
| RotMatrix | operator* (const RotMatrix &other) const |
| Double & | operator() (uInt row, uInt column) |
| Return the indicated element. | |
| const Double & | operator() (uInt row, uInt column) const |
| Matrix< Double > | get () const |
| Get as Matrix. | |
| void | transpose () |
| Transpose the rotation matrix. | |
| void | set (const Matrix< Double > &in) |
| Fill Rotation matrix from Matrix. | |
| void | set (const Vector< Double > &in0, const Vector< Double > &in1, const Vector< Double > &in2) |
| Fill Rotation matrix from 3 (row) vectors. | |
Private Member Functions | |
| void | applySingle (Double angle, Int which) |
| Apply to a rotation matrix a further rotation of angle around the specified axis which (0 or 1 or 2). | |
Private Attributes | |
| Double | rotat [3][3] |
| The rotation matrix (3x3). | |
Friends | |
| ostream & | operator<< (ostream &os, const RotMatrix &rot) |
| Output a rotation matrix as a matrix. | |
A 3x3 rotation matrix.
Internal
From Rotation and Matrix
A rotation matrix is a 3x3 matrix, which can be used to rotate a coordinate system, notably the direction cosines in MVDirection .
A RotMatrix can be constructed by the default constructor (which will set the diagonal to 1), a copy constructor, and from a set of Euler angles with RotMatrix(Euler).
Multiplication can be done (by *= and *) of two rotation matrices.
The (uInt, uInt) operator returns the indicated element.
See Euler
To use in nutation and other coordinate calculations
Definition at line 85 of file RotMatrix.h.
| casacore::RotMatrix::RotMatrix | ( | ) |
Default constructor generates a unit 3x3 matrix.
| casacore::RotMatrix::RotMatrix | ( | const RotMatrix & | other | ) |
The copy constructor copies.
Make from an Euler around specified axes.
| casacore::RotMatrix::~RotMatrix | ( | ) |
Destructor.
Apply to a rotation matrix a further rotation of angle around the specified axis which (0 or 1 or 2).
The multiplication operations generate matrix products.
| void casacore::RotMatrix::set | ( | const Vector< Double > & | in0, | |
| const Vector< Double > & | in1, | |||
| const Vector< Double > & | in2 | |||
| ) |
Fill Rotation matrix from 3 (row) vectors.
| void casacore::RotMatrix::transpose | ( | ) |
Transpose the rotation matrix.
| ostream& operator<< | ( | ostream & | os, | |
| const RotMatrix & | rot | |||
| ) | [friend] |
Output a rotation matrix as a matrix.
Double casacore::RotMatrix::rotat[3][3] [private] |
The rotation matrix (3x3).
Definition at line 136 of file RotMatrix.h.
1.6.1