A spline built from node values and polynomial durations. More...
#include <phase_spline.h>

Public Member Functions | |
| Jacobian | GetJacobianOfPosWrtDurations (double t) const override |
| How the spline position changes when the polynomial durations change. | |
| PhaseSpline (PhaseNodes::Ptr const node_variables, PhaseDurations *const phase_durations) | |
| Constructs a spline with varying/optimized phase durations. | |
| virtual void | UpdatePolynomialDurations () override |
| Called by subject to update polynomial durations when they changed. | |
| ~PhaseSpline () | |
Private Member Functions | |
| Eigen::VectorXd | GetDerivativeOfPosWrtPhaseDuration (double t) const |
| How the position at time t changes with current phase duration. | |
Private Attributes | |
| PhaseNodes::Ptr | phase_nodes_ |
A spline built from node values and polynomial durations.
This class is responsible for combining the optimized node values with the optimized phase durations to construct a sequence of CubicHermitePolynomial. For this it observers whether one of the quantities changed and then updates all the polynomials accordingly.
Definition at line 47 of file phase_spline.h.
| towr::PhaseSpline::PhaseSpline | ( | PhaseNodes::Ptr const | node_variables, |
| PhaseDurations *const | phase_durations | ||
| ) |
Constructs a spline with varying/optimized phase durations.
| node_variables | The optimized node variables (pos, vel). |
| phase_durations | Pointer to the changing phase duration variables. |
Definition at line 35 of file phase_spline.cc.
| Eigen::VectorXd towr::PhaseSpline::GetDerivativeOfPosWrtPhaseDuration | ( | double | t | ) | const [private] |
How the position at time t changes with current phase duration.
| t | The global time along the spline. |
Definition at line 78 of file phase_spline.cc.
| PhaseSpline::Jacobian towr::PhaseSpline::GetJacobianOfPosWrtDurations | ( | double | t | ) | const [override, virtual] |
How the spline position changes when the polynomial durations change.
| t | The time along the spline at which the sensitivity is required. |
Reimplemented from towr::NodeSpline.
Definition at line 68 of file phase_spline.cc.
| void towr::PhaseSpline::UpdatePolynomialDurations | ( | ) | [override, virtual] |
Called by subject to update polynomial durations when they changed.
Implements towr::PhaseDurationsObserver.
Definition at line 55 of file phase_spline.cc.
PhaseNodes::Ptr towr::PhaseSpline::phase_nodes_ [private] |
Definition at line 83 of file phase_spline.h.