Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
Eigen::RotationBase< Derived, _Dim > Class Template Reference

Common base class for compact rotation representations. More...

#include <src/eigen/Eigen/src/Geometry/RotationBase.h>

+ Inheritance diagram for Eigen::RotationBase< Derived, _Dim >:

Public Types

enum  { Dim = _Dim }
 
typedef internal::traits< Derived >::Scalar Scalar
 
typedef Matrix< Scalar, Dim, DimRotationMatrixType
 
typedef Matrix< Scalar, Dim, 1 > VectorType
 

Public Member Functions

EIGEN_DEVICE_FUNC const Derived & derived () const
 
EIGEN_DEVICE_FUNC Derived & derived ()
 
EIGEN_DEVICE_FUNC RotationMatrixType toRotationMatrix () const
 
EIGEN_DEVICE_FUNC RotationMatrixType matrix () const
 
EIGEN_DEVICE_FUNC Derived inverse () const
 
EIGEN_DEVICE_FUNC Transform< Scalar, Dim, Isometryoperator* (const Translation< Scalar, Dim > &t) const
 
EIGEN_DEVICE_FUNC RotationMatrixType operator* (const UniformScaling< Scalar > &s) const
 
template<typename OtherDerived >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::rotation_base_generic_product_selector< Derived, OtherDerived, OtherDerived::IsVectorAtCompileTime >::ReturnType operator* (const EigenBase< OtherDerived > &e) const
 
template<int Mode, int Options>
EIGEN_DEVICE_FUNC Transform< Scalar, Dim, Mode > operator* (const Transform< Scalar, Dim, Mode, Options > &t) const
 
template<typename OtherVectorType >
EIGEN_DEVICE_FUNC VectorType _transformVector (const OtherVectorType &v) const
 

Friends

template<typename OtherDerived >
EIGEN_DEVICE_FUNC RotationMatrixType operator* (const EigenBase< OtherDerived > &l, const Derived &r)
 
EIGEN_DEVICE_FUNC friend Transform< Scalar, Dim, Affineoperator* (const DiagonalMatrix< Scalar, Dim > &l, const Derived &r)
 

Detailed Description

template<typename Derived, int _Dim>
class Eigen::RotationBase< Derived, _Dim >

Common base class for compact rotation representations.

Template Parameters
Derivedis the derived type, i.e., a rotation type
_Dimthe dimension of the space

Member Typedef Documentation

◆ RotationMatrixType

template<typename Derived , int _Dim>
typedef Matrix<Scalar,Dim,Dim> Eigen::RotationBase< Derived, _Dim >::RotationMatrixType

corresponding linear transformation matrix type

◆ Scalar

template<typename Derived , int _Dim>
typedef internal::traits<Derived>::Scalar Eigen::RotationBase< Derived, _Dim >::Scalar

the scalar type of the coefficients

◆ VectorType

template<typename Derived , int _Dim>
typedef Matrix<Scalar,Dim,1> Eigen::RotationBase< Derived, _Dim >::VectorType

Member Enumeration Documentation

◆ anonymous enum

template<typename Derived , int _Dim>
anonymous enum
Enumerator
Dim 
32{ Dim = _Dim };
@ Dim
Definition RotationBase.h:32

Member Function Documentation

◆ _transformVector()

template<typename Derived , int _Dim>
template<typename OtherVectorType >
EIGEN_DEVICE_FUNC VectorType Eigen::RotationBase< Derived, _Dim >::_transformVector ( const OtherVectorType &  v) const
inline
94 { return toRotationMatrix() * v; }
EIGEN_DEVICE_FUNC RotationMatrixType toRotationMatrix() const
Definition RotationBase.h:45

References Eigen::RotationBase< Derived, _Dim >::toRotationMatrix().

+ Here is the call graph for this function:

◆ derived() [1/2]

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC Derived & Eigen::RotationBase< Derived, _Dim >::derived ( )
inline
42{ return *static_cast<Derived*>(this); }

◆ derived() [2/2]

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC const Derived & Eigen::RotationBase< Derived, _Dim >::derived ( ) const
inline
41{ return *static_cast<const Derived*>(this); }

Referenced by Eigen::RotationBase< Derived, _Dim >::inverse(), Eigen::RotationBase< Derived, _Dim >::matrix(), Eigen::RotationBase< Derived, _Dim >::operator*(), Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::operator*(), Eigen::QuaternionBase< Derived >::operator*=(), and Eigen::RotationBase< Derived, _Dim >::toRotationMatrix().

+ Here is the caller graph for this function:

◆ inverse()

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC Derived Eigen::RotationBase< Derived, _Dim >::inverse ( ) const
inline
Returns
the inverse rotation
53{ return derived().inverse(); }
EIGEN_DEVICE_FUNC const Derived & derived() const
Definition RotationBase.h:41

References Eigen::RotationBase< Derived, _Dim >::derived().

+ Here is the call graph for this function:

◆ matrix()

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC RotationMatrixType Eigen::RotationBase< Derived, _Dim >::matrix ( ) const
inline
Returns
an equivalent rotation matrix This function is added to be conform with the Transform class' naming scheme.
50{ return derived().toRotationMatrix(); }

References Eigen::RotationBase< Derived, _Dim >::derived().

Referenced by Slic3r::Emboss::create_transformation_onto_surface(), and igl::snap_to_fixed_up().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ operator*() [1/4]

template<typename Derived , int _Dim>
template<typename OtherDerived >
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE internal::rotation_base_generic_product_selector< Derived, OtherDerived, OtherDerived::IsVectorAtCompileTime >::ReturnType Eigen::RotationBase< Derived, _Dim >::operator* ( const EigenBase< OtherDerived > &  e) const
inline
Returns
the concatenation of the rotation *this with a generic expression e e can be:
  • a DimxDim linear transformation matrix
  • a DimxDim diagonal matrix (axis aligned scaling)
  • a vector of size Dim
72 { return internal::rotation_base_generic_product_selector<Derived,OtherDerived>::run(derived(), e.derived()); }

References Eigen::EigenBase< Derived >::derived(), and Eigen::RotationBase< Derived, _Dim >::derived().

+ Here is the call graph for this function:

◆ operator*() [2/4]

template<typename Derived , int _Dim>
template<int Mode, int Options>
EIGEN_DEVICE_FUNC Transform< Scalar, Dim, Mode > Eigen::RotationBase< Derived, _Dim >::operator* ( const Transform< Scalar, Dim, Mode, Options > &  t) const
inline
Returns
the concatenation of the rotation *this with a transformation t
90 { return toRotationMatrix() * t; }

References Eigen::RotationBase< Derived, _Dim >::toRotationMatrix().

+ Here is the call graph for this function:

◆ operator*() [3/4]

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC Transform< Scalar, Dim, Isometry > Eigen::RotationBase< Derived, _Dim >::operator* ( const Translation< Scalar, Dim > &  t) const
inline
Returns
the concatenation of the rotation *this with a translation t
57 { return Transform<Scalar,Dim,Isometry>(*this) * t; }

◆ operator*() [4/4]

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC RotationMatrixType Eigen::RotationBase< Derived, _Dim >::operator* ( const UniformScaling< Scalar > &  s) const
inline
Returns
the concatenation of the rotation *this with a uniform scaling s
61 { return toRotationMatrix() * s.factor(); }

References Eigen::UniformScaling< _Scalar >::factor(), and Eigen::RotationBase< Derived, _Dim >::toRotationMatrix().

+ Here is the call graph for this function:

◆ toRotationMatrix()

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC RotationMatrixType Eigen::RotationBase< Derived, _Dim >::toRotationMatrix ( void  ) const
inline
Returns
an equivalent rotation matrix
45{ return derived().toRotationMatrix(); }

References Eigen::RotationBase< Derived, _Dim >::derived().

Referenced by Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >::Matrix(), Eigen::RotationBase< Derived, _Dim >::_transformVector(), Eigen::UniformScaling< _Scalar >::operator*(), Eigen::RotationBase< Derived, _Dim >::operator*(), Eigen::RotationBase< Derived, _Dim >::operator*(), Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::operator*=(), Eigen::Matrix< _Scalar, _Rows, _Cols, _Options, _MaxRows, _MaxCols >::operator=(), and Eigen::internal::toRotationMatrix().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ operator* [1/2]

template<typename Derived , int _Dim>
EIGEN_DEVICE_FUNC friend Transform< Scalar, Dim, Affine > operator* ( const DiagonalMatrix< Scalar, Dim > &  l,
const Derived &  r 
)
friend
Returns
the concatenation of a scaling l with the rotation r
81 {
82 Transform<Scalar,Dim,Affine> res(r);
83 res.linear().applyOnTheLeft(l);
84 return res;
85 }

◆ operator* [2/2]

template<typename Derived , int _Dim>
template<typename OtherDerived >
EIGEN_DEVICE_FUNC RotationMatrixType operator* ( const EigenBase< OtherDerived > &  l,
const Derived &  r 
)
friend
Returns
the concatenation of a linear transformation l with the rotation r
77 { return l.derived() * r.toRotationMatrix(); }

The documentation for this class was generated from the following files: