pinocchio  UNKNOWN
ForceBase< Derived > Class Template Reference

Base interface for forces representation. More...

#include <spatial/force-base.hpp>

Inheritance diagram for ForceBase< Derived >:
[legend]

Public Member Functions

 FORCE_TYPEDEF_TPL (Derived)
 
Derived & derived ()
 
const Derived & derived () const
 
ConstAngularType angular () const
 Return the angular part of the force vector. More...
 
ConstLinearType linear () const
 Return the linear part of the force vector. More...
 
AngularType angular ()
 Return the angular part of the force vector. More...
 
LinearType linear ()
 Return the linear part of the force vector. More...
 
template<typename V3Like >
void angular (const Eigen::MatrixBase< V3Like > &n)
 Set the angular part of the force vector. More...
 
template<typename V3Like >
void linear (const Eigen::MatrixBase< V3Like > &f)
 Set the linear part of the force vector. More...
 
ToVectorConstReturnType toVector () const
 Return the force as an Eigen vector. More...
 
ToVectorReturnType toVector ()
 Return the force as an Eigen vector. More...
 
 operator Vector6 () const
 
template<typename F2 >
bool operator== (const ForceBase< F2 > &other) const
 
template<typename F2 >
bool operator!= (const ForceBase< F2 > &other) const
 
bool isApprox (const Derived &other, const Scalar &prec=Eigen::NumTraits< Scalar >::dummy_precision()) const
 
Derived & operator= (const Derived &other)
 Copies the Derived Force into *this. More...
 
Derived & operator+= (const Derived &phi)
 Replaces *this by *this + other. More...
 
Derived & operator-= (const Derived &phi)
 Replaces *this by *this - other. More...
 
Derived operator+ (const Derived &phi) const
 
template<typename OtherScalar >
ForcePlain operator* (const OtherScalar &alpha) const
 
template<typename OtherScalar >
ForcePlain operator/ (const OtherScalar &alpha) const
 
Derived operator- () const
 
Derived operator- (const Derived &phi) const
 
Scalar dot (const Motion &m) const
 
template<typename S2 , int O2>
internal::SE3GroupAction< Derived >::ReturnType se3Action (const SE3Tpl< S2, O2 > &m) const
 Transform from A to B coordinates the Force represented by *this such that

\begin{equation*} {}^{B}f = {}^{B}X_A^* * {}^{A}f \end{equation*}

. More...

 
template<typename S2 , int O2>
internal::SE3GroupAction< Derived >::ReturnType se3ActionInverse (const SE3Tpl< S2, O2 > &m) const
 Transform from B to A coordinates the Force represented by *this such that

\begin{equation*} {}^{A}f = {}^{A}X_B^* * {}^{A}f \end{equation*}

. More...

 
template<typename M1 >
internal::MotionAlgebraAction< Derived, M1 >::ReturnType motionAction (const MotionDense< M1 > &v) const
 
void disp (std::ostream &os) const
 

Friends

std::ostream & operator<< (std::ostream &os, const ForceBase< Derived > &X)
 

Detailed Description

template<class Derived>
class se3::ForceBase< Derived >

Base interface for forces representation.

The Class implements all

Template Parameters
Derived{ description }

Definition at line 40 of file force-base.hpp.

Member Function Documentation

ConstAngularType angular ( ) const
inline

Return the angular part of the force vector.

Returns
The 3D vector associated to the angular part of the 6D force vector

Definition at line 53 of file force-base.hpp.

AngularType angular ( )
inline

Return the angular part of the force vector.

Returns
The 3D vector associated to the angular part of the 6D force vector

Definition at line 63 of file force-base.hpp.

void angular ( const Eigen::MatrixBase< V3Like > &  n)
inline

Set the angular part of the force vector.

Template Parameters
V3LikeA vector 3 like type.
Parameters
[in]n

Definition at line 77 of file force-base.hpp.

Scalar dot ( const Motion m) const
inline
Returns
the dot product of *this with m *

Definition at line 168 of file force-base.hpp.

bool isApprox ( const Derived &  other,
const Scalar &  prec = Eigen::NumTraits<Scalar>::dummy_precision() 
) const
inline
Returns
true if *this is approximately equal to other, within the precision given by prec.

Definition at line 124 of file force-base.hpp.

ConstLinearType linear ( ) const
inline

Return the linear part of the force vector.

Returns
The 3D vector associated to the linear part of the 6D force vector

Definition at line 60 of file force-base.hpp.

Referenced by se3::dccrba().

LinearType linear ( )
inline

Return the linear part of the force vector.

Returns
The 3D vector associated to the linear part of the 6D force vector

Definition at line 66 of file force-base.hpp.

void linear ( const Eigen::MatrixBase< V3Like > &  f)
inline

Set the linear part of the force vector.

Template Parameters
V3LikeA vector 3 like type.
Parameters
[in]f

Definition at line 88 of file force-base.hpp.

bool operator!= ( const ForceBase< F2 > &  other) const
inline
Returns
true if at least one coefficient of *this and other does not match.

Definition at line 120 of file force-base.hpp.

ForcePlain operator* ( const OtherScalar &  alpha) const
inline
Returns
an expression of *this scaled by the factor alpha

Definition at line 151 of file force-base.hpp.

Derived operator+ ( const Derived &  phi) const
inline
Returns
an expression of the sum of *this and other

Definition at line 146 of file force-base.hpp.

Derived& operator+= ( const Derived &  phi)
inline

Replaces *this by *this + other.

Returns
a reference to *this

Definition at line 136 of file force-base.hpp.

Derived operator- ( ) const
inline
Returns
an expression of the opposite of *this

Definition at line 160 of file force-base.hpp.

Derived operator- ( const Derived &  phi) const
inline
Returns
an expression of the difference of *this and phi

Definition at line 164 of file force-base.hpp.

Derived& operator-= ( const Derived &  phi)
inline

Replaces *this by *this - other.

Returns
a reference to *this

Definition at line 142 of file force-base.hpp.

ForcePlain operator/ ( const OtherScalar &  alpha) const
inline
Returns
an expression of *this divided by the factor alpha

Definition at line 156 of file force-base.hpp.

Derived& operator= ( const Derived &  other)
inline

Copies the Derived Force into *this.

Returns
a reference to *this

Definition at line 130 of file force-base.hpp.

bool operator== ( const ForceBase< F2 > &  other) const
inline
Returns
true if each coefficients of *this and other are all exactly equal.
Warning
When using floating point scalar values you probably should rather use a fuzzy comparison such as isApprox()

Definition at line 115 of file force-base.hpp.

internal::SE3GroupAction<Derived>::ReturnType se3Action ( const SE3Tpl< S2, O2 > &  m) const
inline

Transform from A to B coordinates the Force represented by *this such that

\begin{equation*} {}^{B}f = {}^{B}X_A^* * {}^{A}f \end{equation*}

.

Parameters
[in]mThe rigid transformation \( {}^{B}m_A \) whose coordinates transform for forces is {}^{B}X_A^*
Returns
an expression of the force expressed in the new coordinates

Definition at line 184 of file force-base.hpp.

internal::SE3GroupAction<Derived>::ReturnType se3ActionInverse ( const SE3Tpl< S2, O2 > &  m) const
inline

Transform from B to A coordinates the Force represented by *this such that

\begin{equation*} {}^{A}f = {}^{A}X_B^* * {}^{A}f \end{equation*}

.

Parameters
[in]mThe rigid transformation \( {}^{B}m_A \) whose coordinates transform for forces is {}^{B}X_A^*
Returns
an expression of the force expressed in the new coordinates

Definition at line 200 of file force-base.hpp.

ToVectorConstReturnType toVector ( ) const
inline

Return the force as an Eigen vector.

Returns
The 6D vector \( \phi \) such that

\begin{equation*} {}^{A}\phi = \begin{bmatrix} {}^{A}f \\ {}^{A}\tau \end{bmatrix} \end{equation*}

Definition at line 99 of file force-base.hpp.

Referenced by se3::ccrba(), se3::dccrba(), and ForceBase< Derived >::toVector().

ToVectorReturnType toVector ( )
inline

Return the force as an Eigen vector.

Returns
The 6D vector \( \phi \) such that

\begin{equation*} {}^{A}\phi = \begin{bmatrix} {}^{A}f \\ {}^{A}\tau \end{bmatrix} \end{equation*}

Definition at line 102 of file force-base.hpp.

References ForceBase< Derived >::toVector().


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