30 #ifndef PYHPP_GRAPH_HH
31 #define PYHPP_GRAPH_HH
37 namespace manipulation {
70 std::string
name()
const;
78 std::string
name()
const;
87 std::map<std::string, std::size_t>
id;
111 const std::string& transitionName,
int w,
115 const std::string& edgeName,
int nb,
117 bool automaticBuilder);
120 const std::string& edgeName,
int w,
129 std::string& nodeTo);
135 const boost::python::list& py_constraints);
151 PyWStatePtr_t component,
const boost::python::list& py_constraints);
153 PyWEdgePtr_t component,
const boost::python::list& py_constraints);
155 PyWStatePtr_t component,
const boost::python::list& py_constraints);
162 const std::string& name,
const boost::python::list& py_surface1,
163 const boost::python::list& py_surface2,
const value_type& margin);
165 const std::string& name,
const boost::python::list& py_surface1,
166 const boost::python::list& py_surface2,
const value_type& width,
169 const std::string& name,
const boost::python::list& py_surface1,
170 const boost::python::list& py_surface2,
const value_type& margin);
172 const std::string& name,
const boost::python::list& py_surface1,
173 const boost::python::list& py_surface2);
175 const std::string& name,
const boost::python::list& py_surface1,
176 const boost::python::list& py_surface2,
const value_type& width,
179 const std::string& name,
const boost::python::list& py_surface1,
180 const boost::python::list& py_surface2,
const value_type& width);
183 const std::string& gripper,
184 const std::string& handle);
186 const std::string& gripper,
187 const std::string& handle);
216 const boost::python::list& condNC,
217 const boost::python::list& paramNC);
222 const char* joint2,
double margin);
236 void display(
const char* filename);
std::vector< ConstraintAndComplement_t > ConstraintsAndComplements_t
shared_ptr< Implicit > ImplicitPtr_t
std::vector< constraints::ImplicitPtr_t > NumericalConstraints_t
pinocchio::value_type value_type
shared_ptr< Roadmap > RoadmapPtr_t
pinocchio::ConfigurationIn_t ConfigurationIn_t
pinocchio::size_type size_type
pinocchio::Configuration_t Configuration_t
shared_ptr< Edge > EdgePtr_t
shared_ptr< State > StatePtr_t
shared_ptr< GraphComponent > GraphComponentPtr_t
shared_ptr< Graph > GraphPtr_t
shared_ptr< Problem > ProblemPtr_t
pinocchio::Configuration_t Configuration_t
core::size_type size_type
core::value_type value_type
pinocchio::ConfigurationIn_t ConfigurationIn_t
boost::python::tuple tuple
Definition: path-planner.hh:39
hpp::manipulation::graph::StatePtr_t StatePtr_t
Definition: graph.hh:49
std::shared_ptr< Device > PyWDevicePtr_t
Definition: fwd.hh:42
hpp::manipulation::ConstraintsAndComplements_t ConstraintsAndComplements_t
Definition: graph.hh:52
std::shared_ptr< PyWEdge > PyWEdgePtr_t
Definition: graph.hh:80
hpp::manipulation::ProblemPtr_t ProblemPtr_t
Definition: graph.hh:45
hpp::manipulation::graph::State State
Definition: graph.hh:48
hpp::manipulation::graph::Edge Edge
Definition: graph.hh:46
hpp::pinocchio::ConfigurationIn_t ConfigurationIn_t
Definition: device.hh:55
hpp::manipulation::graph::EdgePtr_t EdgePtr_t
Definition: graph.hh:47
hpp::manipulation::ConstraintAndComplement_t ConstraintAndComplement_t
Definition: graph.hh:53
hpp::manipulation::graph::GraphComponentPtr_t GraphComponentPtr_t
Definition: graph.hh:44
std::shared_ptr< PyWState > PyWStatePtr_t
Definition: graph.hh:72
hpp::manipulation::graph::GraphComponent GraphComponent
Definition: graph.hh:43
std::shared_ptr< Problem > PyWProblemPtr_t
Definition: fwd.hh:46
hpp::pinocchio::Configuration_t Configuration_t
Definition: device.hh:54
hpp::manipulation::graph::GraphPtr_t GraphPtr_t
Definition: graph.hh:50
hpp::pinocchio::value_type value_type
Definition: device.hh:57
hpp::pinocchio::size_type size_type
Definition: device.hh:56
Result structure for constraint operations.
Definition: graph.hh:56
Configuration_t configuration
Definition: graph.hh:58
ConstraintResult()
Definition: graph.hh:61
bool success
Definition: graph.hh:57
ConstraintResult(bool s, const Configuration_t &config, value_type err)
Definition: graph.hh:62
value_type error
Definition: graph.hh:59
Python wrapper for Edge.
Definition: graph.hh:75
PyWEdge(const EdgePtr_t &object)
Definition: graph.cc:259
std::string name() const
Definition: graph.cc:260
EdgePtr_t obj
Definition: graph.hh:76
Python wrapper for Graph.
Definition: graph.hh:83
boost::python::tuple getConfigErrorForTransitionLeaf(const PyWEdgePtr_t &edge, ConfigurationIn_t leafConfig, ConfigurationIn_t config) const
Definition: graph.cc:710
void getNodesConnectedByTransition(PyWEdgePtr_t edge, std::string &nodeFrom, std::string &nodeTo)
Definition: graph.cc:409
void setShort(PyWEdgePtr_t edge, bool isShort)
Definition: graph.cc:393
ConstraintResult generateTargetConfig(PyWEdgePtr_t transition, ConfigurationIn_t q_rhs, ConfigurationIn_t input)
Definition: graph.cc:764
size_t getWeight(PyWEdgePtr_t edge)
Definition: graph.cc:428
boost::python::list getRelativeMotionMatrix(PyWEdgePtr_t edge)
Definition: graph.cc:850
ConstraintResult applyLeafConstraints(PyWEdgePtr_t transition, ConfigurationIn_t q_rhs, ConfigurationIn_t input)
Definition: graph.cc:747
void initialize()
Definition: graph.cc:989
boost::python::list getStates()
Definition: graph.cc:512
ConstraintsAndComplements_t constraintsAndComplements
Definition: graph.hh:94
PyWGraph(const GraphPtr_t &object)
Definition: graph.cc:262
boost::python::tuple getConfigErrorForTransitionTarget(const PyWEdgePtr_t &edge, ConfigurationIn_t leafConfig, ConfigurationIn_t config) const
Definition: graph.cc:719
boost::python::tuple getConfigErrorForTransition(PyWEdgePtr_t edge, ConfigurationIn_t input)
Definition: graph.cc:691
ImplicitPtr_t createPreGraspConstraint(const std::string &name, const std::string &gripper, const std::string &handle)
Definition: graph.cc:1189
ImplicitPtr_t createPrePlacementConstraint(const std::string &name, const boost::python::list &py_surface1, const boost::python::list &py_surface2, const value_type &width, const value_type &margin)
Definition: graph.cc:1108
void setContainingNode(PyWEdgePtr_t edge, PyWStatePtr_t node)
Definition: graph.cc:377
boost::python::tuple createPlacementConstraint1(const std::string &name, const boost::python::list &py_surface1, const boost::python::list &py_surface2, const value_type &margin)
Definition: graph.cc:1097
ConstraintResult applyStateConstraints(PyWStatePtr_t state, ConfigurationIn_t input)
Definition: graph.cc:732
PyWProblemPtr_t problem
Definition: graph.hh:92
boost::python::list getNumericalConstraintsForEdge(PyWEdgePtr_t component)
Definition: graph.cc:653
ImplicitPtr_t createPrePlacementConstraint1(const std::string &name, const boost::python::list &py_surface1, const boost::python::list &py_surface2, const value_type &width, const value_type &margin)
Definition: graph.cc:1151
boost::python::list getNumericalConstraintsForGraph()
Definition: graph.cc:657
PyWEdgePtr_t createLevelSetTransition(PyWStatePtr_t nodeFrom, PyWStatePtr_t nodeTo, const std::string &edgeName, int w, PyWStatePtr_t isInState)
Definition: graph.cc:356
ImplicitPtr_t createPrePlacementConstraint2(const std::string &name, const boost::python::list &py_surface1, const boost::python::list &py_surface2, const value_type &width)
Definition: graph.cc:1158
size_type maxIterations() const
Definition: graph.cc:280
void display(const char *filename)
Definition: graph.cc:974
bool isShort(PyWEdgePtr_t edge)
Definition: graph.cc:401
PyWEdgePtr_t getTransition(const std::string &edgeName)
Definition: graph.cc:461
GraphPtr_t obj
Definition: graph.hh:90
void setWaypoint(PyWEdgePtr_t waypointEdge, int index, PyWEdgePtr_t edge, PyWStatePtr_t state)
Definition: graph.cc:436
boost::python::tuple createPlacementConstraint(const std::string &name, const boost::python::list &py_surface1, const boost::python::list &py_surface2, const value_type &margin)
Definition: graph.cc:1007
void removeCollisionPairFromTransition(PyWEdgePtr_t edge, const char *joint1, const char *joint2)
Definition: graph.cc:876
boost::python::list getNumericalConstraintsForState(PyWStatePtr_t component)
Definition: graph.cc:649
boost::python::list getStateNames()
Definition: graph.cc:546
void addLevelSetFoliation(PyWEdgePtr_t edge, const boost::python::list &condNC, const boost::python::list ¶mNC)
Definition: graph.cc:788
hpp::constraints::NumericalConstraints_t NumericalConstraints_t
Definition: graph.hh:85
void resetConstraints(PyWStatePtr_t component)
Definition: graph.cc:661
void createSubGraph(const char *subgraphName, hpp::core::RoadmapPtr_t roadmap)
Definition: graph.cc:901
PyWStatePtr_t createState(const std::string &nodeName, bool waypoint, int priority)
Definition: graph.cc:292
PyWEdgePtr_t createTransition(PyWStatePtr_t nodeFrom, PyWStatePtr_t nodeTo, const std::string &transitionName, int w, PyWStatePtr_t isInState)
Definition: graph.cc:304
value_type errorThreshold() const
Definition: graph.cc:286
boost::python::list createGraspConstraint(const std::string &name, const std::string &gripper, const std::string &handle)
Definition: graph.cc:1164
void addNumericalConstraintsForPath(PyWStatePtr_t component, const boost::python::list &py_constraints)
Definition: graph.cc:633
std::string getContainingNode(PyWEdgePtr_t edge)
Definition: graph.cc:385
PyWEdgePtr_t createWaypointTransition(PyWStatePtr_t nodeFrom, PyWStatePtr_t nodeTo, const std::string &edgeName, int nb, int w, PyWStatePtr_t isInState, bool automaticBuilder)
Definition: graph.cc:317
void setSecurityMarginForTransition(PyWEdgePtr_t edge, const char *joint1, const char *joint2, double margin)
Definition: graph.cc:832
std::string displayStateConstraints(PyWStatePtr_t state)
Definition: graph.cc:938
boost::python::list getTransitionNames()
Definition: graph.cc:529
boost::python::tuple getConfigErrorForState(PyWStatePtr_t component, ConfigurationIn_t input)
Definition: graph.cc:680
boost::python::list getSecurityMarginMatrixForTransition(PyWEdgePtr_t edge)
Definition: graph.cc:816
std::map< std::string, std::size_t > id
Definition: graph.hh:87
void setTargetNodeList(const boost::python::list &nodes)
Definition: graph.cc:913
std::string displayTransitionTargetConstraints(PyWEdgePtr_t edge)
Definition: graph.cc:962
void addNumericalConstraintsToTransition(PyWEdgePtr_t component, const boost::python::list &py_constraints)
Definition: graph.cc:601
hpp::constraints::ImplicitPtr_t ImplicitPtr_t
Definition: graph.hh:84
void addNumericalConstraintsToGraph(const boost::python::list &py_constraints)
Definition: graph.cc:617
std::string getStateFromConfiguration(ConfigurationIn_t input)
Definition: graph.cc:567
boost::python::tuple createPlacementConstraint2(const std::string &name, const boost::python::list &py_surface1, const boost::python::list &py_surface2)
Definition: graph.cc:1102
void addNumericalConstraint(PyWStatePtr_t node, const ImplicitPtr_t &constraint)
Definition: graph.cc:580
PyWDevicePtr_t robot
Definition: graph.hh:91
std::string displayTransitionConstraints(PyWEdgePtr_t edge)
Definition: graph.cc:950
void addNumericalConstraintsToState(PyWStatePtr_t component, const boost::python::list &py_constraints)
Definition: graph.cc:585
void registerConstraints(const ImplicitPtr_t &constraint, const ImplicitPtr_t &complement, const ImplicitPtr_t &both)
Definition: graph.cc:665
boost::python::list getTransitions()
Definition: graph.cc:495
void setWeight(PyWEdgePtr_t edge, int weight)
Definition: graph.cc:420
PyWStatePtr_t getState(const std::string &stateName)
Definition: graph.cc:478
Python wrapper for State.
Definition: graph.hh:67
std::string name() const
Definition: graph.cc:257
StatePtr_t obj
Definition: graph.hh:68
PyWState(const StatePtr_t &object)
Definition: graph.cc:256