Go to the documentation of this file. 1 #ifndef AIKIDO_PLANNER_KUNZRETIMER_KUNZRETIMER_HPP_
2 #define AIKIDO_PLANNER_KUNZRETIMER_KUNZRETIMER_HPP_
12 namespace kunzretimer {
37 const Eigen::VectorXd& maxVelocity,
38 const Eigen::VectorXd& maxAcceleration,
39 double maxDeviation = 1e-2,
40 double timeStep = 0.1);
52 const Eigen::VectorXd& velocityLimits,
53 const Eigen::VectorXd& accelerationLimits,
59 std::unique_ptr<aikido::trajectory::Spline>
postprocess(
66 std::unique_ptr<aikido::trajectory::Spline>
postprocess(
113 #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:44
Eigen::VectorXd mAccelerationLimits
Set to the value of accelerationLimits.
Definition: KunzRetimer.hpp:100
void setMaxDeviation(double maxDeviation)
Sets the max deviation of circular blending.
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:106
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:97
Implementation of the C++11 "random engine" concept that uses virtual function calls to erase the typ...
Definition: RNG.hpp:24
KunzRetimer(const Eigen::VectorXd &velocityLimits, const Eigen::VectorXd &accelerationLimits, double maxDeviation, double timeStep)
std::unique_ptr< aikido::trajectory::Spline > computeKunzTiming(const aikido::trajectory::Interpolated &inputTrajectory, const Eigen::VectorXd &maxVelocity, const Eigen::VectorXd &maxAcceleration, double maxDeviation=1e-2, double timeStep=0.1)
Computes the time-optimal timing of a trajectory consisting of a sequence Geodesic interpolations bet...
Definition: TrajectoryPostProcessor.hpp:12
std::shared_ptr< Testable > TestablePtr
Definition: Testable.hpp:13
void setTimeStep(double timeStep)
Sets the time step in following a path.
double mMaxDeviation
Set to the value of maxDeviation.
Definition: KunzRetimer.hpp:103
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.