19 #ifndef HPP_RBPRM_TIMED_PARABOLA_PATH_HH 20 #define HPP_RBPRM_TIMED_PARABOLA_PATH_HH 45 static TimedParabolaPathPtr_t
create(
const core::DevicePtr_t&
device, core::ConfigurationIn_t
init,
48 TimedParabolaPathPtr_t shPtr(ptr);
57 static TimedParabolaPathPtr_t
create(
const core::DevicePtr_t&
device, core::ConfigurationIn_t
init,
58 core::ConfigurationIn_t
end, core::value_type
length,
61 TimedParabolaPathPtr_t shPtr(ptr);
72 static TimedParabolaPathPtr_t
create(
const core::DevicePtr_t&
device, core::ConfigurationIn_t
init,
73 core::ConfigurationIn_t
end, core::value_type
length,
74 core::vector_t
coefficients, core::vector_t V0, core::vector_t Vimp,
75 std::vector<std::string> initialROMnames,
76 std::vector<std::string> endROMnames) {
78 new TimedParabolaPath(device, init, end, length, coefficients, V0, Vimp, initialROMnames, endROMnames);
79 TimedParabolaPathPtr_t shPtr(ptr);
86 static TimedParabolaPathPtr_t
createCopy(
const TimedParabolaPathPtr_t& path) {
88 TimedParabolaPathPtr_t shPtr(ptr);
97 static TimedParabolaPathPtr_t
createCopy(
const TimedParabolaPathPtr_t& path,
98 const core::ConstraintSetPtr_t& ) {
101 TimedParabolaPathPtr_t shPtr(ptr);
116 virtual core::PathPtr_t
copy(
const core::ConstraintSetPtr_t& constraints)
const {
124 virtual core::PathPtr_t
extract(
const core::interval_t& subInterval)
const;
128 virtual core::PathPtr_t
reverse()
const;
135 assert(initial.size() == initial_.size());
144 assert(end.size() == end_.size());
149 core::DevicePtr_t
device()
const;
152 core::Configuration_t
initial()
const {
return initial_; }
155 core::Configuration_t
end()
const {
return end_; }
158 virtual core::value_type
length()
const {
return length_; }
166 TimedParabolaPath(
const core::DevicePtr_t& robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end,
170 TimedParabolaPath(
const core::DevicePtr_t& robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end,
171 core::value_type length, core::vector_t coefs, core::vector_t V0, core::vector_t Vimp,
172 std::vector<std::string> initialROMnames, std::vector<std::string> endROMnames);
177 void init(TimedParabolaPathPtr_t
self) {
183 virtual bool impl_compute(core::ConfigurationOut_t result, core::value_type t)
const;
189 virtual std::ostream&
print(std::ostream& os)
const {
190 os <<
"TimedParabolaPath:" << std::endl;
191 os <<
"interval: [ " << timeRange().first <<
", " << timeRange().second <<
" ]" << std::endl;
192 os <<
"initial configuration: " << initial_.transpose() << std::endl;
193 os <<
"final configuration: " << end_.transpose() << std::endl;
198 core::DevicePtr_t device_;
199 core::Configuration_t initial_;
200 core::Configuration_t end_;
201 TimedParabolaPathWkPtr_t weak_;
203 mutable core::value_type length_;
209 #endif // HPP_RBPRM_TIMED_PARABOLA_PATH_HH void init(TimedParabolaPathPtr_t self)
Definition: timed-parabola-path.hh:177
static TimedParabolaPathPtr_t create(const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, ParabolaPathPtr_t parabolaPath)
Definition: timed-parabola-path.hh:45
std::shared_ptr< ParabolaPath > ParabolaPathPtr_t
Definition: parabola-path.hh:33
static TimedParabolaPathPtr_t create(const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients)
Definition: timed-parabola-path.hh:57
core::Configuration_t end() const
Get the final configuration.
Definition: timed-parabola-path.hh:155
Definition: algorithm.hh:27
core::Configuration_t initial() const
Get the initial configuration.
Definition: timed-parabola-path.hh:152
Definition: parabola-path.hh:44
static TimedParabolaPathPtr_t create(const core::DevicePtr_t &device, core::ConfigurationIn_t init, core::ConfigurationIn_t end, core::value_type length, core::vector_t coefficients, core::vector_t V0, core::vector_t Vimp, std::vector< std::string > initialROMnames, std::vector< std::string > endROMnames)
Definition: timed-parabola-path.hh:72
TimedParabolaPath(const core::DevicePtr_t &robot, core::ConfigurationIn_t init, core::ConfigurationIn_t end, ParabolaPathPtr_t parabolaPath)
Constructor.
void initialConfig(core::ConfigurationIn_t initial)
Definition: timed-parabola-path.hh:134
static TimedParabolaPathPtr_t createCopy(const TimedParabolaPathPtr_t &path)
Definition: timed-parabola-path.hh:86
virtual core::PathPtr_t copy() const
Definition: timed-parabola-path.hh:110
virtual core::PathPtr_t copy(const core::ConstraintSetPtr_t &constraints) const
Definition: timed-parabola-path.hh:116
std::shared_ptr< TimedParabolaPath > TimedParabolaPathPtr_t
Definition: timed-parabola-path.hh:30
HPP_PREDEF_CLASS(RbPrmFullBody)
void init(ParabolaPathPtr_t self)
Definition: parabola-path.hh:200
void endConfig(core::ConfigurationIn_t end)
Definition: timed-parabola-path.hh:143
virtual std::ostream & print(std::ostream &os) const
Print path in a stream.
Definition: timed-parabola-path.hh:189
Definition: timed-parabola-path.hh:35
virtual double computeTimedLength(double x_theta, double v0, double alpha0)
virtual core::PathPtr_t extract(const core::interval_t &subInterval) const
static TimedParabolaPathPtr_t createCopy(const TimedParabolaPathPtr_t &path, const core::ConstraintSetPtr_t &)
Definition: timed-parabola-path.hh:97
core::DevicePtr_t device() const
Return the internal robot.
virtual ~TimedParabolaPath()
Destructor.
Definition: timed-parabola-path.hh:39
core::vector_t coefficients() const
Get path coefficients.
Definition: parabola-path.hh:160
virtual core::PathPtr_t reverse() const
virtual core::value_type length() const
Get previously computed length.
Definition: timed-parabola-path.hh:158
virtual bool impl_compute(core::ConfigurationOut_t result, core::value_type t) const
Param is the time.
ParabolaPath parent_t
Definition: timed-parabola-path.hh:37