Choreonoid  1.5
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
cnoid::WaistBalancer Class Reference

#include <WaistBalancer.h>

Public Types

enum  BoundaryConditionType { KEEP_POSITIONS = 0, ZERO_VELOCITY = 1, NUM_BOUNDARY_CONDITION_TYPES = 2, DEFAULT_BOUNDARY_CONDITION = 0 }
 
enum  BoundarySmootherType {
  NO_SMOOTHER = 0, CUBIC_SMOOTHER = 1, QUINTIC_SMOOTHER = 2, NUM_BOUNDARY_SMOOTHER_TYPES = 3,
  DEFAULT_BOUNDARY_SMOOTHER = 2
}
 
enum  InitialWaistTrajectoryMode { PLAIN_TRAJECTORY, ORG_TRAJECTORY }
 

Public Member Functions

 WaistBalancer ()
 
void setMessageOutputStream (std::ostream &os)
 
void setBody (const BodyPtr &body)
 
const BodyPtrbody () const
 
void setWaistLink (Link *waistLink)
 
void setNumIterations (int n)
 
int numIterations () const
 
void setTimeRange (double lower, double upper)
 
void setFullTimeRange ()
 
void setTimeMargins (double timeToStartBalancer, double preInitialDuration, double postFinalDuration)
 
void setGravity (double g)
 
void setDynamicsTimeRatio (double r)
 
void setBoundaryConditionType (int type)
 
void setBoundarySmoother (int type, double smoothingTime)
 
void enableBoundaryCmAdjustment (bool on, double transitionTime=1.0)
 
void setInitialWaistTrajectoryMode (int mode)
 
void enableWaistHeightRelaxation (bool on)
 
bool apply (PoseProvider *provider, BodyMotion &motion, bool putAllLinkPositions=false)
 

Static Public Member Functions

static const char * boundaryConditionTypeNameOf (int type)
 
static int boundaryConditionTypeOf (const std::string &name)
 
static const char * boundarySmootherTypeNameOf (int type)
 
static int boundarySmootherTypeOf (const std::string &name)
 

Member Enumeration Documentation

◆ BoundaryConditionType

Enumerator
KEEP_POSITIONS 
ZERO_VELOCITY 
NUM_BOUNDARY_CONDITION_TYPES 
DEFAULT_BOUNDARY_CONDITION 

◆ BoundarySmootherType

Enumerator
NO_SMOOTHER 
CUBIC_SMOOTHER 
QUINTIC_SMOOTHER 
NUM_BOUNDARY_SMOOTHER_TYPES 
DEFAULT_BOUNDARY_SMOOTHER 

◆ InitialWaistTrajectoryMode

Enumerator
PLAIN_TRAJECTORY 
ORG_TRAJECTORY 

Constructor & Destructor Documentation

◆ WaistBalancer()

WaistBalancer::WaistBalancer ( )

Member Function Documentation

◆ apply()

bool WaistBalancer::apply ( PoseProvider provider,
BodyMotion motion,
bool  putAllLinkPositions = false 
)

◆ body()

const BodyPtr & WaistBalancer::body ( ) const

◆ boundaryConditionTypeNameOf()

const char * WaistBalancer::boundaryConditionTypeNameOf ( int  type)
static

◆ boundaryConditionTypeOf()

int WaistBalancer::boundaryConditionTypeOf ( const std::string &  name)
static

◆ boundarySmootherTypeNameOf()

const char * WaistBalancer::boundarySmootherTypeNameOf ( int  type)
static

◆ boundarySmootherTypeOf()

int WaistBalancer::boundarySmootherTypeOf ( const std::string &  name)
static

◆ enableBoundaryCmAdjustment()

void WaistBalancer::enableBoundaryCmAdjustment ( bool  on,
double  transitionTime = 1.0 
)

◆ enableWaistHeightRelaxation()

void WaistBalancer::enableWaistHeightRelaxation ( bool  on)

◆ numIterations()

int WaistBalancer::numIterations ( ) const

◆ setBody()

void WaistBalancer::setBody ( const BodyPtr body)

◆ setBoundaryConditionType()

void WaistBalancer::setBoundaryConditionType ( int  type)

◆ setBoundarySmoother()

void WaistBalancer::setBoundarySmoother ( int  type,
double  smoothingTime 
)

◆ setDynamicsTimeRatio()

void WaistBalancer::setDynamicsTimeRatio ( double  r)

◆ setFullTimeRange()

void WaistBalancer::setFullTimeRange ( )

◆ setGravity()

void WaistBalancer::setGravity ( double  g)

◆ setInitialWaistTrajectoryMode()

void WaistBalancer::setInitialWaistTrajectoryMode ( int  mode)

◆ setMessageOutputStream()

void cnoid::WaistBalancer::setMessageOutputStream ( std::ostream &  os)
inline

◆ setNumIterations()

void WaistBalancer::setNumIterations ( int  n)

◆ setTimeMargins()

void WaistBalancer::setTimeMargins ( double  timeToStartBalancer,
double  preInitialDuration,
double  postFinalDuration 
)

◆ setTimeRange()

void WaistBalancer::setTimeRange ( double  lower,
double  upper 
)

◆ setWaistLink()

void WaistBalancer::setWaistLink ( Link waistLink)

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