hpp-manipulation
4.9.0
Classes for manipulation planning.
|
Go to the documentation of this file.
17 #ifndef HPP_MANIPULATION_GRAPH_HELPER_HH
18 # define HPP_MANIPULATION_GRAPH_HELPER_HH
23 # include <boost/tuple/tuple.hpp>
30 namespace manipulation {
47 std::copy (
nc.begin(),
nc.end(), ret.
nc.begin());
48 std::copy (other.
nc.begin(), other.
nc.end(), ret.
nc.begin());
51 std::copy (other.
pdof.begin(), other.
pdof.end(), ret.
pdof.begin());
74 std::copy (
lj.begin (),
lj.end (), both.
lj.end ());
75 std::copy (other.
lj.begin (), other.
lj.end (), both.
lj.end ());
87 return lj.empty () &&
nc.
nc.empty ();
116 template <
int gCase >
118 const std::string& forwName,
const std::string& backName,
123 const bool levelSetGrasp,
const bool levelSetPlace,
128 const std::string& loopName,
179 typedef boost::tuple <PlacementConstraint_t, Handles_t, std::size_t>
Object_t;
202 const std::string& graphName,
204 const std::list <ObjectDef_t>& objs,
214 #endif // HPP_MANIPULATION_GRAPH_HELPER_HH
pinocchio::GripperPtr_t GripperPtr_t
Definition: fwd.hh:41
std::vector< Object_t > Objects_t
Definition: helper.hh:180
bool link_
Definition: helper.hh:105
void relaxedPlacementManifold(const ImplicitPtr_t placement, const ImplicitPtr_t preplacement, const LockedJoints_t objectLocks, FoliatedManifold &place, FoliatedManifold &preplace)
NumericalConstraints_t nc
Definition: helper.hh:39
Edges_t createEdges(const std::string &forwName, const std::string &backName, const StatePtr_t &from, const StatePtr_t &to, const size_type &wForw, const size_type &wBack, const FoliatedManifold &grasp, const FoliatedManifold &pregrasp, const FoliatedManifold &place, const FoliatedManifold &preplace, const bool levelSetGrasp, const bool levelSetPlace, const FoliatedManifold &submanifoldDef=FoliatedManifold())
hpp::core::LockedJoints_t LockedJoints_t
Definition: fwd.hh:54
void addToState(StatePtr_t comp) const
std::vector< Rule > Rules_t
Definition: helper.hh:109
NumericalConstraintsAndPassiveDofs nc_path
Definition: helper.hh:64
NumericalConstraintsAndPassiveDofs nc
Definition: helper.hh:62
@ GraspOnly
Definition: helper.hh:93
void addToComp(GraphComponentPtr_t comp) const
Definition: helper.hh:102
LockedJoints_t lj
Definition: helper.hh:63
Definition: helper.hh:195
NumericalConstraintsAndPassiveDofs merge(const NumericalConstraintsAndPassiveDofs &other)
Definition: helper.hh:42
core::value_type value_type
Definition: fwd.hh:79
std::vector< HandlePtr_t > Handles_t
Definition: helper.hh:172
boost::shared_ptr< LevelSetEdge > LevelSetEdgePtr_t
Definition: fwd.hh:39
GraspingCase
Definition: helper.hh:91
bool empty() const
Definition: helper.hh:86
LockedJoints_t lj_fol
Definition: helper.hh:67
boost::shared_ptr< Graph > GraphPtr_t
Definition: fwd.hh:35
void addToEdge(EdgePtr_t comp) const
bool foliated() const
Definition: helper.hh:83
void specifyFoliation(LevelSetEdgePtr_t lse) const
StringList_t shapes
Definition: helper.hh:197
boost::shared_ptr< State > StatePtr_t
Definition: fwd.hh:36
void graspManifold(const GripperPtr_t &gripper, const HandlePtr_t &handle, FoliatedManifold &grasp, FoliatedManifold &pregrasp)
@ NoPlace
Definition: helper.hh:97
NumericalConstraintsAndPassiveDofs nc_fol
Definition: helper.hh:66
constraints::ImplicitPtr_t ImplicitPtr_t
Definition: fwd.hh:105
std::list< std::string > StringList_t
Definition: fwd.hh:132
@ WithPreGrasp
Definition: helper.hh:94
boost::shared_ptr< Edge > EdgePtr_t
Definition: fwd.hh:37
boost::shared_ptr< Handle > HandlePtr_t
Definition: fwd.hh:48
IntervalsContainer_t pdof
Definition: helper.hh:40
FoliatedManifold merge(const FoliatedManifold &other)
Definition: helper.hh:69
hpp::core::NumericalConstraints_t NumericalConstraints_t
Definition: fwd.hh:53
std::vector< EdgePtr_t > Edges_t
Definition: fwd.hh:46
Rule()
Definition: helper.hh:106
std::vector< segments_t > IntervalsContainer_t
Definition: fwd.hh:52
boost::shared_ptr< GraphComponent > GraphComponentPtr_t
Definition: fwd.hh:43
StringList_t handles
Definition: helper.hh:197
core::size_type size_type
Definition: fwd.hh:80
PlacementCase
Definition: helper.hh:96
std::vector< std::string > handles_
Definition: helper.hh:104
void graphBuilder(const ProblemSolverPtr_t &ps, const Objects_t &objects, const Grippers_t &grippers, GraphPtr_t graph, const Rules_t &rules=Rules_t())
void specifyFoliation(LevelSetEdgePtr_t lse) const
@ PlaceOnly
Definition: helper.hh:98
std::vector< std::string > grippers_
Definition: helper.hh:103
EdgePtr_t createLoopEdge(const std::string &loopName, const StatePtr_t &state, const size_type &w, const bool levelSet, const FoliatedManifold &submanifoldDef=FoliatedManifold())
Definition: problem-solver.hh:33
std::string name
Definition: helper.hh:196
void strictPlacementManifold(const ImplicitPtr_t placement, const ImplicitPtr_t preplacement, const ImplicitPtr_t placementComplement, FoliatedManifold &place, FoliatedManifold &preplace)
boost::tuple< PlacementConstraint_t, Handles_t, std::size_t > Object_t
Definition: helper.hh:179
std::vector< GripperPtr_t > Grippers_t
Definition: helper.hh:173
@ NoGrasp
Definition: helper.hh:92
@ WithPrePlace
Definition: helper.hh:99
boost::tuple< ImplicitPtr_t, ImplicitPtr_t, LockedJoints_t > PlacementConstraint_t
Definition: helper.hh:171