hpp-rbprm
4.10.0
Implementation of RB-PRM planner using hpp.
|
Go to the documentation of this file.
19 #ifndef HPP_RBPRM_LIMB_HH
20 # define HPP_RBPRM_LIMB_HH
25 # include <hpp/pinocchio/device.hh>
45 typedef std::map<std::string, const rbprm::RbPrmLimbPtr_t >
T_Limb;
47 typedef Eigen::Matrix <pinocchio::value_type, Eigen::Dynamic, Eigen::Dynamic>
MatrixXX;
48 typedef Eigen::Matrix <pinocchio::value_type, Eigen::Dynamic, 3>
MatrixX3;
49 typedef Eigen::Matrix <pinocchio::value_type, Eigen::Dynamic, 1>
VectorX;
50 typedef Eigen::Matrix <pinocchio::value_type, 3, 1>
Vector3;
96 static RbPrmLimbPtr_t create (
const pinocchio::JointPtr_t limb,
const std::string& effectorName,
const fcl::Vec3f &offset,
97 const fcl::Vec3f &limbOffset,
const fcl::Vec3f &normal,
const double x,
const double y,
100 bool disableEndEffectorCollision =
false,
102 const std::string& kinematicsConstraintsPath = std::string(),
103 const double kinematicConstraintsMinDistance = 0.);
105 static RbPrmLimbPtr_t create (
const pinocchio::DevicePtr_t device, std::ifstream& fileStream,
const bool loadValues =
true,
107 bool disableEndEffectorCollision =
false,
108 bool grasps =
false);
114 pinocchio::Transform3f octreeRoot()
const;
135 RbPrmLimb (
const pinocchio::JointPtr_t& limb,
const std::string& effectorName,
const fcl::Vec3f &offset,
136 const fcl::Vec3f &limbOffset,
const fcl::Vec3f &normal,
const double x,
const double y,
139 bool disableEndEffectorCollision =
false,
141 const std::string& kinematicsConstraintsPath = std::string(),
142 const double kinematicConstraintsMinDistance = 0.);
144 RbPrmLimb (
const pinocchio::DevicePtr_t device, std::ifstream& fileStream,
const bool loadValues,
146 bool disableEndEffectorCollision =
false,
147 bool grasps =
false);
151 void init (
const RbPrmLimbWkPtr_t& weakPtr);
154 RbPrmLimbWkPtr_t weakPtr_;
163 #endif // HPP_RBPRM_LIMB_HH
const double y_
Definition: rbprm-limb.hh:124
boost::shared_ptr< RbPrmLimb > RbPrmLimbPtr_t
Definition: rbprm-limb.hh:43
const pinocchio::JointPtr_t limb_
Definition: rbprm-limb.hh:117
HPP_PREDEF_CLASS(RbPrmFullBody)
Eigen::Matrix< pinocchio::value_type, 3, 1 > Vector3
Definition: rbprm-limb.hh:50
sampling::SampleDB sampleContainer_
Definition: rbprm-limb.hh:127
const ContactType contactType_
Definition: rbprm-limb.hh:125
boost::function< double(const SampleDB &sampleDB, const sampling::Sample &sample) > evaluate
Definition: sample-db.hh:75
Eigen::Matrix< pinocchio::value_type, Eigen::Dynamic, 3 > MatrixX3
Definition: rbprm-limb.hh:48
T_Limb::const_iterator CIT_Limb
Definition: rbprm-limb.hh:46
sampling::heuristic evaluate_
Definition: rbprm-limb.hh:126
Eigen::Matrix< pinocchio::value_type, Eigen::Dynamic, 1 > VectorX
Definition: rbprm-limb.hh:49
std::map< std::string, const rbprm::RbPrmLimbPtr_t > T_Limb
Definition: rbprm-limb.hh:45
@ _6_DOF
Definition: rbprm-limb.hh:32
const bool grasps_
Definition: rbprm-limb.hh:129
Definition: algorithm.hh:27
const fcl::Vec3f offset_
Definition: rbprm-limb.hh:120
fcl::Vec3f effectorReferencePosition_
Definition: rbprm-limb.hh:130
ContactType
Definition: rbprm-limb.hh:30
const fcl::Vec3f normal_
Definition: rbprm-limb.hh:122
double(* heuristic)(const sampling::Sample &sample, const Eigen::Vector3d &direction, const Eigen::Vector3d &normal, const HeuristicParam ¶ms)
Definition: heuristic.hh:41
HPP_RBPRM_DLLAPI bool saveLimbInfoAndDatabase(const RbPrmLimbPtr_t limb, std::ofstream &dbFile)
const double x_
Definition: rbprm-limb.hh:123
Definition: sample-db.hh:86
std::pair< MatrixXX, MatrixXX > kinematicConstraints_
Definition: rbprm-limb.hh:131
const pinocchio::Frame effector_
Definition: rbprm-limb.hh:118
const bool disableEndEffectorCollision_
Definition: rbprm-limb.hh:128
const fcl::Matrix3f effectorDefaultRotation_
Definition: rbprm-limb.hh:119
@ _3_DOF
Definition: rbprm-limb.hh:33
const fcl::Vec3f limbOffset_
Definition: rbprm-limb.hh:121
Definition: rbprm-limb.hh:53
@ _UNDEFINED
Definition: rbprm-limb.hh:34
Eigen::Matrix< pinocchio::value_type, Eigen::Dynamic, Eigen::Dynamic > MatrixXX
Definition: rbprm-limb.hh:47
#define HPP_RBPRM_DLLAPI
Definition: config.hh:64