Crocoddyl
CoPSupportTpl< _Scalar > Class Template Reference

This class encapsulates a center of pressure support of a 6d contact. More...

#include <cop-support.hpp>

Public Types

typedef MathBaseTpl< Scalar > MathBase
 
typedef MathBase::Matrix3s Matrix3s
 
typedef MathBase::Matrix46s Matrix46s
 
typedef MathBase::Quaternions Quaternions
 
typedef MathBase::Vector2s Vector2s
 
typedef MathBase::Vector3s Vector3s
 
typedef MathBase::Vector4s Vector4s
 

Public Member Functions

 CoPSupportTpl ()
 Initialize the center of pressure support.
 
 CoPSupportTpl (const CoPSupportTpl< Scalar > &support)
 Initialize the center of pressure support. More...
 
 CoPSupportTpl (const Matrix3s &R, const Vector2s &box)
 Initialize the center of pressure support. More...
 
 CoPSupportTpl (const WrenchConeTpl< Scalar > &support)
 Initialize the center of pressure support. More...
 
const Matrix46s & get_A () const
 Return the matrix of center of pressure support.
 
const Vector2s & get_box () const
 Return dimension of the center of pressure support (length, width)
 
const Vector4s & get_lb () const
 Return the lower bound of the center of pressure support.
 
const Matrix3s & get_R () const
 Return the rotation matrix that defines the support orientation w.r.t. the inertial frame.
 
const Vector4s & get_ub () const
 Return the upper bound of the center of pressure support.
 
CoPSupportTpl< Scalar > & operator= (const CoPSupportTpl< Scalar > &other)
 
void set_box (const Vector2s &box)
 Modify dimension of the center of pressure support (length, width) More...
 
void set_R (const Matrix3s &R)
 Modify the rotation matrix that defines the support orientation w.r.t. the inertial frame. More...
 
void update ()
 Update the matrix of center of pressure inequalities in the world frame. More...
 

Public Attributes

EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef _Scalar Scalar
 

Friends

template<class Scalar >
std::ostream & operator<< (std::ostream &os, const CoPSupportTpl< Scalar > &X)
 

Detailed Description

template<typename _Scalar>
class crocoddyl::CoPSupportTpl< _Scalar >

This class encapsulates a center of pressure support of a 6d contact.

A CoP support defines a rectangular region that characterizes feasible CoP position.

/sa FrictionConeTpl, WrenchConeTpl

Definition at line 26 of file cop-support.hpp.

Constructor & Destructor Documentation

◆ CoPSupportTpl() [1/3]

CoPSupportTpl ( const Matrix3s &  R,
const Vector2s &  box 
)

Initialize the center of pressure support.

Parameters
[in]RRotation matrix that defines the support orientation w.r.t. the inertial frame
[in]boxDimension of the foot surface dim = (length, width)

◆ CoPSupportTpl() [2/3]

CoPSupportTpl ( const WrenchConeTpl< Scalar > &  support)

Initialize the center of pressure support.

Parameters
[in]supportCenter of pressure support

◆ CoPSupportTpl() [3/3]

CoPSupportTpl ( const CoPSupportTpl< Scalar > &  support)

Initialize the center of pressure support.

Parameters
[in]supportCenter of pressure support

Member Function Documentation

◆ update()

void update ( )

Update the matrix of center of pressure inequalities in the world frame.

This matrix-vector pair describes the center of pressure model as follow: \( -ub \leq A \times w \leq -lb \), where wrench, \( w \), is expressed in the inertial frame located at the center of the rectangular foot contact area (length, width) with axes parallel to those of the world frame.

◆ set_R()

void set_R ( const Matrix3s &  R)

Modify the rotation matrix that defines the support orientation w.r.t. the inertial frame.

Note that you need to run update for updating the inequality matrix and bounds.

◆ set_box()

void set_box ( const Vector2s &  box)

Modify dimension of the center of pressure support (length, width)

Note that you need to run update for updating the inequality matrix and bounds.


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