|
| SO2 () |
| Default constructor. Initialises the matrix to the identity (no rotation) More...
|
|
| SO2 (const Matrix< 2, 2, Precision > &rhs) |
| Construct from a rotation matrix. More...
|
|
| SO2 (const Precision l) |
| Construct from an angle. More...
|
|
template<int R, int C, typename P , typename A > |
SO2 & | operator= (const Matrix< R, C, P, A > &rhs) |
|
void | coerce () |
| Modifies the matrix to make sure it is a valid rotation matrix. More...
|
|
Precision | ln () const |
| extracts the rotation angle from the SO2 More...
|
|
SO2 | inverse () const |
| Returns the inverse of this matrix (=the transpose, so this is a fast operation) More...
|
|
template<typename P > |
SO2 & | operator*= (const SO2< P > &rhs) |
| Self right-multiply by another rotation matrix. More...
|
|
template<typename P > |
SO2< typename Internal::MultiplyType< Precision, P >::type > | operator* (const SO2< P > &rhs) const |
| Right-multiply by another rotation matrix. More...
|
|
const Matrix< 2, 2, Precision > & | get_matrix () const |
| Returns the SO2 as a Matrix<2> More...
|
|
|
(Note that these are not member functions.)
|
template<typename Precision > |
SE2< Precision > | operator* (const SO2< Precision > &lhs, const SE2< Precision > &rhs) |
|
template<typename Precision > |
std::ostream & | operator<< (std::ostream &os, const SO2< Precision > &rhs) |
|
template<typename Precision > |
std::istream & | operator>> (std::istream &is, SO2< Precision > &rhs) |
|
template<int D, typename P1 , typename PV , typename Accessor > |
Vector< 2, typename Internal::MultiplyType< P1, PV >::type > | operator* (const SO2< P1 > &lhs, const Vector< D, PV, Accessor > &rhs) |
|
template<int D, typename P1 , typename PV , typename Accessor > |
Vector< 2, typename Internal::MultiplyType< PV, P1 >::type > | operator* (const Vector< D, PV, Accessor > &lhs, const SO2< P1 > &rhs) |
|
template<int R, int C, typename P1 , typename P2 , typename Accessor > |
Matrix< 2, C, typename Internal::MultiplyType< P1, P2 >::type > | operator* (const SO2< P1 > &lhs, const Matrix< R, C, P2, Accessor > &rhs) |
|
template<int R, int C, typename P1 , typename P2 , typename Accessor > |
Matrix< R, 2, typename Internal::MultiplyType< P1, P2 >::type > | operator* (const Matrix< R, C, P1, Accessor > &lhs, const SO2< P2 > &rhs) |
|
template<typename Precision = double>
class TooN::SO2< Precision >
Class to represent a two-dimensional rotation matrix. Two-dimensional rotation matrices are members of the Special Orthogonal Lie group SO2. This group can be parameterised with one number (the rotation angle).
Definition at line 39 of file so2.h.
template<typename Precision = double>
template<int R, int C, typename P , typename A >
Assigment operator from a general matrix. This also calls coerce() to make sure that the matrix is a valid rotation matrix.
Definition at line 70 of file so2.h.