10#ifndef EIGEN_ROTATION2D_H
11#define EIGEN_ROTATION2D_H
36 typedef _Scalar Scalar;
40template<
typename _Scalar>
47 using Base::operator*;
71 template<
typename Derived>
74 fromRotationMatrix(m.derived());
102 {
return Rotation2D(m_angle + other.m_angle); }
106 { m_angle += other.m_angle;
return *
this; }
112 template<
typename Derived>
123 template<
typename Derived>
125 {
return fromRotationMatrix(m.derived()); }
141 template<
typename NewScalarType>
146 template<
typename OtherScalarType>
149 m_angle =
Scalar(other.angle());
159 {
return internal::isApprox(m_angle,other.m_angle,
prec); }
174template<
typename Scalar>
175template<
typename Derived>
179 EIGEN_STATIC_ASSERT(Derived::RowsAtCompileTime==2 && Derived::ColsAtCompileTime==2,YOU_MADE_A_PROGRAMMING_MISTAKE)
186template<
typename Scalar>
The matrix class, also used for vectors and row-vectors.
Definition Matrix.h:180
\geometry_module
Definition Rotation2D.h:42
Scalar & angle()
Definition Rotation2D.h:81
Scalar smallestPositiveAngle() const
Definition Rotation2D.h:84
Rotation2D(const Rotation2D< OtherScalarType > &other)
Copy constructor with scalar type conversion.
Definition Rotation2D.h:147
Rotation2D()
Default constructor wihtout initialization.
Definition Rotation2D.h:65
Rotation2D & operator=(const MatrixBase< Derived > &m)
Set *this from a 2x2 rotation matrix mat.
Definition Rotation2D.h:124
Rotation2D(const MatrixBase< Derived > &m)
Construct a 2D rotation from a 2x2 rotation matrix mat.
Definition Rotation2D.h:72
Rotation2D inverse() const
Definition Rotation2D.h:98
Rotation2D & operator*=(const Rotation2D &other)
Concatenates two rotations.
Definition Rotation2D.h:105
Matrix2 toRotationMatrix() const
Constructs and.
Definition Rotation2D.h:188
bool isApprox(const Rotation2D &other, const typename NumTraits< Scalar >::Real &prec=NumTraits< Scalar >::dummy_precision()) const
Definition Rotation2D.h:158
Scalar angle() const
Definition Rotation2D.h:78
internal::cast_return_type< Rotation2D, Rotation2D< NewScalarType > >::type cast() const
Definition Rotation2D.h:142
Rotation2D slerp(const Scalar &t, const Rotation2D &other) const
Definition Rotation2D.h:130
_Scalar Scalar
the scalar type of the coefficients
Definition Rotation2D.h:51
Scalar smallestAngle() const
Definition Rotation2D.h:90
Rotation2D operator*(const Rotation2D &other) const
Concatenates two rotations.
Definition Rotation2D.h:101
Rotation2D(const Scalar &a)
Construct a 2D counter clock wise rotation from the angle a in radian.
Definition Rotation2D.h:62
Common base class for compact rotation representations.
Definition RotationBase.h:30
friend RotationMatrixType operator*(const EigenBase< OtherDerived > &l, const Rotation2D< _Scalar > &r)
Definition RotationBase.h:76
Pseudo expression representing a solving operation.
Definition Solve.h:63
Holds information about the various numeric (i.e.
Definition NumTraits.h:108
Definition XprHelper.h:500
Definition ForwardDeclarations.h:17