Go to the documentation of this file. 1 #ifndef AIKIDO_PLANNER_KUNZRETIMER_KUNZRETIMER_HPP_
2 #define AIKIDO_PLANNER_KUNZRETIMER_KUNZRETIMER_HPP_
12 namespace kunzretimer {
40 const Eigen::VectorXd& maxVelocity,
41 const Eigen::VectorXd& maxAcceleration,
74 const Eigen::VectorXd& velocityLimits,
75 const Eigen::VectorXd& accelerationLimits,
83 const Eigen::VectorXd& velocityLimits,
84 const Eigen::VectorXd& accelerationLimits,
89 std::unique_ptr<aikido::trajectory::Spline>
postprocess(
96 std::unique_ptr<aikido::trajectory::Spline>
postprocess(
143 #endif // ifndef AIKIDO_PLANNER_KUNZRETIMER_KUNZRETIMER_HPP_
const Eigen::VectorXd & getAccelerationLimits() const
Returns the acceleration limits of the dimensions.
Class for performing time-optimal trajectory retiming following subject to velocity and acceleration ...
Definition: KunzRetimer.hpp:47
Eigen::VectorXd mAccelerationLimits
Set to the value of accelerationLimits.
Definition: KunzRetimer.hpp:130
void setMaxDeviation(double maxDeviation)
Sets the max deviation of circular blending.
Params(double _maxDeviation=DEFAULT_MAX_DEVIATION, double _timeStep=DEFAULT_TIME_STEP)
Definition: KunzRetimer.hpp:56
Kunz postprocessor parameters.
Definition: KunzRetimer.hpp:51
Format of serialized trajectory in YAML.
Definition: algorithm.hpp:4
double getTimeStep() const
Returns the time step in following a path.
double getMaxDeviation() const
Returns the max deviation of circular blending.
double mTimeStep
Set to the value of timeStep.
Definition: KunzRetimer.hpp:136
const Eigen::VectorXd & getVelocityLimits() const
Returns the velocity limits of the dimensions.
void setVelocityLimits(const Eigen::VectorXd &velocityLimits)
Sets the velocity limits of the dimensions.
std::unique_ptr< aikido::trajectory::Spline > postprocess(const aikido::trajectory::Interpolated &inputTraj, const aikido::common::RNG &rng, const aikido::constraint::TestablePtr &constraint=nullptr) override
Performs parabolic retiming on an input trajectory.
Eigen::VectorXd mVelocityLimits
Set to the value of velocityLimits.
Definition: KunzRetimer.hpp:127
Implementation of the C++11 "random engine" concept that uses virtual function calls to erase the typ...
Definition: RNG.hpp:24
constexpr double DEFAULT_TIME_STEP
Definition: KunzRetimer.hpp:15
std::unique_ptr< aikido::trajectory::Spline > computeKunzTiming(const aikido::trajectory::Interpolated &inputTrajectory, const Eigen::VectorXd &maxVelocity, const Eigen::VectorXd &maxAcceleration, double maxDeviation=DEFAULT_MAX_DEVIATION, double timeStep=DEFAULT_TIME_STEP)
Computes the time-optimal timing of a trajectory consisting of a sequence Geodesic interpolations bet...
constexpr double DEFAULT_MAX_DEVIATION
Definition: KunzRetimer.hpp:14
double mTimeStep
Definition: KunzRetimer.hpp:65
Definition: TrajectoryPostProcessor.hpp:12
std::shared_ptr< Testable > TestablePtr
Definition: Testable.hpp:13
double mMaxDeviation
Definition: KunzRetimer.hpp:64
void setTimeStep(double timeStep)
Sets the time step in following a path.
double mMaxDeviation
Set to the value of maxDeviation.
Definition: KunzRetimer.hpp:133
Trajectory that uses an Interpolator to interpolate between waypoints.
Definition: Interpolated.hpp:14
Polynomial spline trajectory defined in a StateSpace.
Definition: Spline.hpp:25
void setAccelerationLimits(const Eigen::VectorXd &accelerationLimits)
Sets the acceleration limits of the dimensions.
KunzRetimer(const Eigen::VectorXd &velocityLimits, const Eigen::VectorXd &accelerationLimits, double maxDeviation=DEFAULT_MAX_DEVIATION, double timeStep=DEFAULT_TIME_STEP)