hpp-rbprm
4.10.1
Implementation of RB-PRM planner using hpp.
|
Go to the documentation of this file.
18 #ifndef HPP_RBPRM_STEERING_METHOD_KINODYNAMIC_HH
19 #define HPP_RBPRM_STEERING_METHOD_KINODYNAMIC_HH
22 #include <hpp/core/steering-method/steering-kinodynamic.hh>
28 using core::ConfigurationIn_t;
37 core::PathPtr_t
operator()(core::ConfigurationIn_t q1,
const core::NodePtr_t x) {
39 return impl_compute(q1, x);
40 }
catch (
const core::projection_error& e) {
41 hppDout(info,
"Could not build path: " << e.what());
43 return core::PathPtr_t();
46 core::PathPtr_t
operator()(
const core::NodePtr_t x, core::ConfigurationIn_t q2) {
48 return impl_compute(x, q2);
49 }
catch (
const core::projection_error& e) {
50 hppDout(info,
"Could not build path: " << e.what());
52 return core::PathPtr_t();
71 virtual core::SteeringMethodPtr_t
copy()
const {
return createCopy(weak_.lock()); }
74 virtual core::PathPtr_t impl_compute(core::ConfigurationIn_t q1, core::ConfigurationIn_t q2)
const;
76 core::PathPtr_t impl_compute(core::NodePtr_t x, core::ConfigurationIn_t q2);
78 core::PathPtr_t impl_compute(core::ConfigurationIn_t q1, core::NodePtr_t x);
95 void init(SteeringMethodKinodynamicWkPtr_t weak) {
96 core::SteeringMethod::init(weak);
106 core::PathPtr_t computeDirection(
const core::ConfigurationIn_t from,
const core::ConfigurationIn_t to,
bool reverse);
116 core::PathPtr_t setSteeringMethodBounds(
const core::RbprmNodePtr_t& near,
const core::ConfigurationIn_t target,
120 core::DeviceWkPtr_t device_;
122 centroidal_dynamics::Equilibrium* sEq_;
123 bool boundsUpToDate_;
124 SteeringMethodKinodynamicWkPtr_t weak_;
130 #endif // HPP_RBPRM_STEERING_METHOD_KINODYNAMIC_HH
static SteeringMethodKinodynamicPtr_t createCopy(const SteeringMethodKinodynamicPtr_t &other)
Copy instance and return shared pointer.
Definition: rbprm-steering-kinodynamic.hh:63
int dirTotal_
Definition: rbprm-steering-kinodynamic.hh:83
Definition: rbprm-steering-kinodynamic.hh:35
virtual core::SteeringMethodPtr_t copy() const
Copy instance and return shared pointer.
Definition: rbprm-steering-kinodynamic.hh:71
HPP_PREDEF_CLASS(RbPrmFullBody)
Definition: rbprm-node.hh:22
int rejectedPath_
Definition: rbprm-steering-kinodynamic.hh:84
Eigen::Matrix< pinocchio::value_type, 3, 1 > Vector3
Definition: rbprm-limb.hh:48
static SteeringMethodKinodynamicPtr_t create(const core::Problem &problem)
Create an instance.
Definition: rbprm-steering-kinodynamic.hh:55
const double maxLength_
Definition: rbprm-steering-kinodynamic.hh:85
boost::shared_ptr< SteeringMethodKinodynamic > SteeringMethodKinodynamicPtr_t
Definition: rbprm-steering-kinodynamic.hh:33
int dirValid_
Definition: rbprm-steering-kinodynamic.hh:82
core::PathPtr_t operator()(const core::NodePtr_t x, core::ConfigurationIn_t q2)
Definition: rbprm-steering-kinodynamic.hh:46
Definition: algorithm.hh:27
core::PathPtr_t operator()(core::ConfigurationIn_t q1, const core::NodePtr_t x)
Definition: rbprm-steering-kinodynamic.hh:37
double totalTimeValidated_
Definition: rbprm-steering-kinodynamic.hh:81
void init(SteeringMethodKinodynamicWkPtr_t weak)
Store weak pointer to itself.
Definition: rbprm-steering-kinodynamic.hh:95
double totalTimeComputed_
Definition: rbprm-steering-kinodynamic.hh:80
#define HPP_RBPRM_DLLAPI
Definition: config.hh:64