casa
$Rev:20696$
|
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.
Default constructor generates a unit 3x3 matrix.
casa::RotMatrix::RotMatrix | ( | const RotMatrix & | other | ) |
The copy constructor copies.
casa::RotMatrix::RotMatrix | ( | const Euler & | other | ) |
Make from an Euler.
casa::RotMatrix::RotMatrix | ( | const Euler & | other, |
Int | ax0, | ||
Int | ax1, | ||
Int | ax2 | ||
) |
Make from an Euler around specified axes.
Destructor.
void casa::RotMatrix::applySingle | ( | Double | angle, |
Int | which | ||
) | [private] |
Apply to a rotation matrix a further rotation of angle around the specified axis which (0 or 1 or 2).
Matrix<Double> casa::RotMatrix::get | ( | ) | const |
Get as Matrix.
The multiplication operations generate matrix products.
void casa::RotMatrix::set | ( | const Matrix< Double > & | in | ) |
Fill Rotation matrix from Matrix.
void casa::RotMatrix::set | ( | const Vector< Double > & | in0, |
const Vector< Double > & | in1, | ||
const Vector< Double > & | in2 | ||
) |
Fill Rotation matrix from 3 (row) vectors.
void casa::RotMatrix::transpose | ( | ) |
Transpose the rotation matrix.
ostream& operator<< | ( | ostream & | os, |
const RotMatrix & | rot | ||
) | [friend] |
Output a rotation matrix as a matrix.
Double casa::RotMatrix::rotat[3][3] [private] |
The rotation matrix (3x3)
Definition at line 136 of file RotMatrix.h.