19 #ifndef HPP_RBPRM_POLYNOM_TRAJECTORY_HH 20 #define HPP_RBPRM_POLYNOM_TRAJECTORY_HH 22 #include <hpp/core/fwd.hh> 23 #include <hpp/core/config.hh> 24 #include <hpp/core/path.hh> 26 #include <ndcurves/curve_abc.h> 30 namespace interpolation {
33 typedef ndcurves::curve_abc<core::value_type, core::value_type, true, Eigen::Vector3d>
Polynom;
54 static PolynomTrajectoryPtr_t
create(PolynomPtr_t polynom, core::value_type subSetStart = 0,
55 core::value_type subSetEnd = 1) {
57 PolynomTrajectoryPtr_t shPtr(ptr);
65 static PolynomTrajectoryPtr_t
createCopy(
const PolynomTrajectoryPtr_t& path) {
67 PolynomTrajectoryPtr_t shPtr(ptr);
77 virtual core::PathPtr_t
copy()
const {
return createCopy(weak_.lock()); }
83 virtual core::PathPtr_t extract(
const core::interval_t& subInterval)
const;
86 core::Configuration_t
initial()
const {
return polynom_->operator()(subSetStart_); }
89 core::Configuration_t
end()
const {
return polynom_->operator()(subSetEnd_); }
95 virtual std::ostream&
print(std::ostream& os)
const {
96 os <<
"PolynomTrajectory:" << std::endl;
97 os <<
"interval: [ " << timeRange().first <<
", " << timeRange().second <<
" ]" << std::endl;
98 os <<
"initial configuration: " << initial() << std::endl;
99 os <<
"final configuration: " << end() << std::endl;
103 PolynomTrajectory(PolynomPtr_t polynom, core::value_type subSetStart, core::value_type subSetEnd);
108 void init(PolynomTrajectoryPtr_t
self) {
109 parent_t::init(
self);
113 virtual bool impl_compute(core::ConfigurationOut_t result, core::value_type param)
const;
115 virtual core::PathPtr_t
copy(
const core::ConstraintSetPtr_t&)
const {
throw; }
124 PolynomTrajectoryWkPtr_t weak_;
129 #endif // HPP_RBPRM_POLYNOM_TRAJECTORY_HH virtual void checkPath() const
Definition: polynom-trajectory.hh:91
Definition: polynom-trajectory.hh:44
virtual ~PolynomTrajectory()
Destructor.
Definition: polynom-trajectory.hh:48
static PolynomTrajectoryPtr_t createCopy(const PolynomTrajectoryPtr_t &path)
Definition: polynom-trajectory.hh:65
virtual core::PathPtr_t copy(const core::ConstraintSetPtr_t &) const
Definition: polynom-trajectory.hh:115
Definition: algorithm.hh:27
const core::value_type subSetEnd_
Definition: polynom-trajectory.hh:120
virtual std::ostream & print(std::ostream &os) const
Print path in a stream.
Definition: polynom-trajectory.hh:95
core::Configuration_t initial() const
Get the initial configuration.
Definition: polynom-trajectory.hh:86
const core::value_type length_
Definition: polynom-trajectory.hh:121
void init(PolynomTrajectoryPtr_t self)
Definition: polynom-trajectory.hh:108
static PolynomTrajectoryPtr_t create(PolynomPtr_t polynom, core::value_type subSetStart=0, core::value_type subSetEnd=1)
Definition: polynom-trajectory.hh:54
ndcurves::curve_abc< core::value_type, core::value_type, true, Eigen::Vector3d > Polynom
Definition: polynom-trajectory.hh:33
virtual core::PathPtr_t copy() const
Definition: polynom-trajectory.hh:77
std::shared_ptr< Polynom > PolynomPtr_t
Definition: polynom-trajectory.hh:34
Path parent_t
Definition: polynom-trajectory.hh:46
HPP_PREDEF_CLASS(ComTrajectory)
core::Configuration_t end() const
Get the final configuration.
Definition: polynom-trajectory.hh:89
const PolynomPtr_t polynom_
Definition: polynom-trajectory.hh:118
const core::value_type subSetStart_
Definition: polynom-trajectory.hh:119
std::shared_ptr< PolynomTrajectory > PolynomTrajectoryPtr_t
Definition: polynom-trajectory.hh:32