A bounded-velocity, bounded-acceleration trajectory consisting of parabolic ramps. More...
#include <DynamicPath.h>
Public Member Functions | |
void | Append (const Vector &x) |
void | Append (const Vector &x, const Vector &dx) |
void | Clear () |
void | Concat (const DynamicPath &suffix) |
void | Derivative (Real t, Vector &dx) const |
DynamicPath () | |
bool | Empty () const |
void | Evaluate (Real t, Vector &x) const |
void | GetMilestones (std::vector< Vector > &x, std::vector< Vector > &dx) const |
int | GetSegment (Real t, Real &u) const |
Real | GetTotalTime () const |
void | Init (const Vector &velMax, const Vector &accMax) |
bool | IsValid () const |
int | OnlineShortcut (Real leadTime, Real padTime, RampFeasibilityChecker &check) |
int | OnlineShortcut (Real leadTime, Real padTime, RampFeasibilityChecker &check, RandomNumberGeneratorBase *rng) |
void | SetJointLimits (const Vector &qMin, const Vector &qMax) |
void | SetMilestones (const std::vector< Vector > &x) |
void | SetMilestones (const std::vector< Vector > &x, const std::vector< Vector > &dx) |
int | ShortCircuit (RampFeasibilityChecker &check) |
int | Shortcut (int numIters, RampFeasibilityChecker &check) |
int | Shortcut (int numIters, RampFeasibilityChecker &check, RandomNumberGeneratorBase *rng) |
void | Split (Real t, DynamicPath &before, DynamicPath &after) const |
bool | TryShortcut (Real t1, Real t2, RampFeasibilityChecker &check) |
Public Attributes | |
Vector | accMax |
std::vector< ParabolicRampND > | ramps |
The path is stored as a series of ramps. | |
Vector | velMax |
Vector | xMax |
Vector | xMin |
The joint limits (optional), velocity bounds, and acceleration bounds. |
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).
Definition at line 113 of file DynamicPath.h.
Definition at line 97 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::Append | ( | const Vector & | x | ) |
Definition at line 254 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::Append | ( | const Vector & | x, |
const Vector & | dx | ||
) |
Definition at line 287 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::Clear | ( | ) | [inline] |
Definition at line 119 of file DynamicPath.h.
void ParabolicRamp::DynamicPath::Concat | ( | const DynamicPath & | suffix | ) |
Definition at line 313 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::Derivative | ( | Real | t, |
Vector & | dx | ||
) | const |
Definition at line 155 of file DynamicPath.cpp.
bool ParabolicRamp::DynamicPath::Empty | ( | ) | const [inline] |
Definition at line 120 of file DynamicPath.h.
void ParabolicRamp::DynamicPath::Evaluate | ( | Real | t, |
Vector & | x | ||
) | const |
Definition at line 137 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::GetMilestones | ( | std::vector< Vector > & | x, |
std::vector< Vector > & | dx | ||
) | const |
Definition at line 237 of file DynamicPath.cpp.
int ParabolicRamp::DynamicPath::GetSegment | ( | Real | t, |
Real & | u | ||
) | const |
Definition at line 123 of file DynamicPath.cpp.
Real ParabolicRamp::DynamicPath::GetTotalTime | ( | ) | const |
Definition at line 116 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::Init | ( | const Vector & | velMax, |
const Vector & | accMax | ||
) |
Definition at line 100 of file DynamicPath.cpp.
bool ParabolicRamp::DynamicPath::IsValid | ( | ) | const |
Definition at line 831 of file DynamicPath.cpp.
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
Definition at line 745 of file DynamicPath.cpp.
int ParabolicRamp::DynamicPath::OnlineShortcut | ( | Real | leadTime, |
Real | padTime, | ||
RampFeasibilityChecker & | check, | ||
RandomNumberGeneratorBase * | rng | ||
) |
Definition at line 751 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::SetJointLimits | ( | const Vector & | qMin, |
const Vector & | qMax | ||
) |
Definition at line 108 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::SetMilestones | ( | const std::vector< Vector > & | x | ) |
void ParabolicRamp::DynamicPath::SetMilestones | ( | const std::vector< Vector > & | x, |
const std::vector< Vector > & | dx | ||
) |
int ParabolicRamp::DynamicPath::ShortCircuit | ( | RampFeasibilityChecker & | check | ) |
Definition at line 721 of file DynamicPath.cpp.
int ParabolicRamp::DynamicPath::Shortcut | ( | int | numIters, |
RampFeasibilityChecker & | check | ||
) |
Definition at line 644 of file DynamicPath.cpp.
int ParabolicRamp::DynamicPath::Shortcut | ( | int | numIters, |
RampFeasibilityChecker & | check, | ||
RandomNumberGeneratorBase * | rng | ||
) |
Definition at line 650 of file DynamicPath.cpp.
void ParabolicRamp::DynamicPath::Split | ( | Real | t, |
DynamicPath & | before, | ||
DynamicPath & | after | ||
) | const |
Definition at line 351 of file DynamicPath.cpp.
bool ParabolicRamp::DynamicPath::TryShortcut | ( | Real | t1, |
Real | t2, | ||
RampFeasibilityChecker & | check | ||
) |
Definition at line 577 of file DynamicPath.cpp.
Definition at line 144 of file DynamicPath.h.
std::vector<ParabolicRampND> ParabolicRamp::DynamicPath::ramps |
The path is stored as a series of ramps.
Definition at line 146 of file DynamicPath.h.
Definition at line 144 of file DynamicPath.h.
Definition at line 144 of file DynamicPath.h.
The joint limits (optional), velocity bounds, and acceleration bounds.
Definition at line 144 of file DynamicPath.h.