Klamp't  0.8.1
Public Member Functions | Public Attributes | List of all members
ParabolicRamp::DynamicPath Class Reference

A bounded-velocity, bounded-acceleration trajectory consisting of parabolic ramps. More...

#include <DynamicPath.h>

Public Member Functions

void Init (const Vector &velMax, const Vector &accMax)
 
void SetJointLimits (const Vector &qMin, const Vector &qMax)
 
void Clear ()
 
bool Empty () const
 
const Vector & StartConfig () const
 
const Vector & EndConfig () const
 
const Vector & StartVelocity () const
 
const Vector & EndVelocity () const
 
Real GetTotalTime () const
 
int GetSegment (Real t, Real &u) const
 
void Evaluate (Real t, Vector &x) const
 
void Derivative (Real t, Vector &dx) const
 
void Accel (Real t, Vector &ddx) const
 
bool SolveMinTime (const Vector &x0, const Vector &dx0, const Vector &x1, const Vector &dx1)
 
bool SolveMinAccel (const Vector &x0, const Vector &dx0, const Vector &x1, const Vector &dx1, Real endTime)
 
bool SetMilestones (const std::vector< Vector > &x)
 
bool SetMilestones (const std::vector< Vector > &x, const std::vector< Vector > &dx)
 
void GetMilestones (std::vector< Vector > &x, std::vector< Vector > &dx) const
 
void Append (const Vector &x)
 
void Append (const Vector &x, const Vector &dx)
 
void Concat (const DynamicPath &suffix)
 
void Split (Real t, DynamicPath &before, DynamicPath &after) const
 
bool TryShortcut (Real t1, Real t2, RampFeasibilityChecker &check)
 
int Shortcut (int numIters, RampFeasibilityChecker &check)
 
int Shortcut (int numIters, RampFeasibilityChecker &check, RandomNumberGeneratorBase *rng)
 
int ShortCircuit (RampFeasibilityChecker &check)
 
int OnlineShortcut (Real leadTime, Real padTime, RampFeasibilityChecker &check)
 
int OnlineShortcut (Real leadTime, Real padTime, RampFeasibilityChecker &check, RandomNumberGeneratorBase *rng)
 
int WrappedShortcut (const std::vector< Real > &modulus, int numIters, RampFeasibilityChecker &check, RandomNumberGeneratorBase *rng)
 
bool IsValid () const
 

Public Attributes

Vector xMin
 The joint limits (optional), velocity bounds, and acceleration bounds.
 
Vector xMax
 
Vector velMax
 
Vector accMax
 
std::vector< ParabolicRampNDramps
 The path is stored as a series of ramps.
 

Detailed Description

A bounded-velocity, bounded-acceleration trajectory consisting of parabolic ramps.

Optionally, joint limits xMin and xMax may be specified as well. If so, then the XXXBounded functions are used for smoothing.

The Shortcut and OnlineShortcut methods can optionally take a custom random number generator (may be useful for multithreading).

Member Function Documentation

int ParabolicRamp::DynamicPath::OnlineShortcut ( Real  leadTime,
Real  padTime,
RampFeasibilityChecker check 
)

leadTime: the amount of time before this path should be executable padTime: an approximate bound on the time it takes to check a shortcut


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