hpp-python 6.1.0
python bindings for HPP, based on boost python
Loading...
Searching...
No Matches
path-planner.hh
Go to the documentation of this file.
1//
2// Copyright (c) 2025, CNRS
3// Authors: Florent Lamiraux
4//
5// Redistribution and use in source and binary forms, with or without
6// modification, are permitted provided that the following conditions
7// are met:
8
9// 1. Redistributions of source code must retain the above copyright
10// notice, this list of conditions and the following disclaimer.
11
12// 2. Redistributions in binary form must reproduce the above
13// copyright notice, this list of conditions and the following
14// disclaimer in the documentation and/or other materials provided
15// with the distribution.
16
17// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
20// FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
21// COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
22// INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
23// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
24// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
25// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
26// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
27// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
28// OF THE POSSIBILITY OF SUCH DAMAGE.
29
30#ifndef PYHPP_MANIPULATION_PATH_PLANNER_HH
31#define PYHPP_MANIPULATION_PATH_PLANNER_HH
32
33#include <hpp/manipulation/fwd.hh>
35
36namespace pyhpp {
37namespace manipulation {
38
39typedef boost::python::tuple tuple;
47
49 // Dynamic cast pointer into TransitionPlanner
53 void innerPlanner(const pyhpp::core::PathPlanner& planner);
56 bool resetRoadmap);
58 tuple validateConfiguration(ConfigurationIn_t q, std::size_t id) const;
61 void setEdge(const PyWEdge& transition);
62 void setReedsAndSheppSteeringMethod(double turningRadius);
65 void addPathOptimizer(const PathOptimizerPtr_t& pathOptimizer);
66}; // struct TransitionPlanner
67} // namespace manipulation
68} // namespace pyhpp
69#endif // PYHPP_MANIPULATION_PATH_PLANNER_HH
ProblemConstPtr_t problem() const
Definition path-planner.cc:110
shared_ptr< PathVector > PathVectorPtr_t
shared_ptr< PathOptimizer > PathOptimizerPtr_t
shared_ptr< PathProjector > PathProjectorPtr_t
shared_ptr< Roadmap > RoadmapPtr_t
pinocchio::ConfigurationIn_t ConfigurationIn_t
constraints::matrixIn_t matrixIn_t
shared_ptr< Path > PathPtr_t
shared_ptr< TransitionPlanner > TransitionPlannerPtr_t
core::matrixIn_t matrixIn_t
boost::python::tuple tuple
Definition path-planner.hh:39
Definition fwd.hh:35
Python wrapper for Edge.
Definition graph.hh:75
Definition path-planner.hh:48
void setReedsAndSheppSteeringMethod(double turningRadius)
Definition path-planner.cc:174
PathVectorPtr_t timeParameterization(const PathVectorPtr_t &path)
Definition path-planner.cc:165
void pathProjector(const PathProjectorPtr_t pathProjector)
Definition path-planner.cc:178
tuple directPath(ConfigurationIn_t q1, ConfigurationIn_t q2, bool validate)
Definition path-planner.cc:133
PathVectorPtr_t planPath(ConfigurationIn_t qInit, matrixIn_t qGoals, bool resetRoadmap)
Definition path-planner.cc:109
hpp::manipulation::pathPlanner::TransitionPlannerPtr_t trObj() const
Definition path-planner.cc:89
void addPathOptimizer(const PathOptimizerPtr_t &pathOptimizer)
Definition path-planner.cc:186
void setEdge(const PyWEdge &transition)
Definition path-planner.cc:170
void clearPathOptimizers()
Definition path-planner.cc:182
tuple validateConfiguration(ConfigurationIn_t q, std::size_t id) const
Definition path-planner.cc:154
PathVectorPtr_t optimizePath(const PathPtr_t &path)
Definition path-planner.cc:161
pyhpp::core::Problem innerProblem() const
Definition path-planner.cc:105
pyhpp::core::PathPlanner innerPlanner() const
Definition path-planner.cc:96