casa
5.7.0-16
|
A 3x3 rotation matrix. More...
#include <RotMatrix.h>
Public Member Functions | |
RotMatrix () | |
Default constructor generates a unit 3x3 matrix. More... | |
RotMatrix (const RotMatrix &other) | |
The copy constructor copies. More... | |
RotMatrix (const Euler &other) | |
Make from an Euler. More... | |
RotMatrix (const Euler &other, Int ax0, Int ax1, Int ax2) | |
Make from an Euler around specified axes. More... | |
RotMatrix & | operator= (const RotMatrix &other) |
Copy assignment. More... | |
~RotMatrix () | |
Destructor. More... | |
RotMatrix & | operator*= (const RotMatrix &other) |
The multiplication operations generate matrix products. More... | |
RotMatrix | operator* (const RotMatrix &other) const |
Double & | operator() (uInt row, uInt column) |
Return the indicated element. More... | |
const Double & | operator() (uInt row, uInt column) const |
Matrix< Double > | get () const |
Get as Matrix. More... | |
void | transpose () |
Transpose the rotation matrix. More... | |
void | set (const Matrix< Double > &in) |
Fill Rotation matrix from Matrix. More... | |
void | set (const Vector< Double > &in0, const Vector< Double > &in1, const Vector< Double > &in2) |
Fill Rotation matrix from 3 (row) vectors. More... | |
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). More... | |
Private Attributes | |
Double | rotat [3][3] |
The rotation matrix (3x3) More... | |
Friends | |
ostream & | operator<< (ostream &os, const RotMatrix &rot) |
Output a rotation matrix as a matrix. More... | |
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.
|
friend |
Output a rotation matrix as a matrix.
|
private |
The rotation matrix (3x3)
Definition at line 136 of file RotMatrix.h.