hpp-rbprm  4.15.1
Implementation of RB-PRM planner using hpp.
com-rrt.hh
Go to the documentation of this file.
1 //
2 // Copyright (c) 2014 CNRS
3 // Authors: Steve Tonneau (steve.tonneau@laas.fr)
4 //
5 // This file is part of hpp-rbprm.
6 // hpp-rbprm is free software: you can redistribute it
7 // and/or modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation, either version
9 // 3 of the License, or (at your option) any later version.
10 //
11 // hpp-rbprm is distributed in the hope that it will be
12 // useful, but WITHOUT ANY WARRANTY; without even the implied warranty
13 // of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // General Lesser Public License for more details. You should have
15 // received a copy of the GNU Lesser General Public License along with
16 // hpp-core If not, see
17 // <http://www.gnu.org/licenses/>.
18 
19 #ifndef HPP_RBPRM_COM_RRT_HH
20 #define HPP_RBPRM_COM_RRT_HH
21 
22 #include <hpp/core/config-projector.hh>
23 #include <hpp/core/path.hh>
24 #include <hpp/core/problem.hh>
25 #include <hpp/rbprm/config.hh>
32 #include <hpp/rbprm/rbprm-state.hh>
33 #include <map>
34 #include <vector>
35 
36 namespace hpp {
37 namespace rbprm {
38 namespace interpolation {
39 
40 struct SetComRRTConstraints;
41 
42 typedef TimeConstraintHelper<TimeConstraintPath, ComRRTShooterFactory,
43  SetComRRTConstraints>
46  void operator()(ComRRTHelper& helper, const State& from,
47  const State& to) const;
48 };
49 
50 core::PathPtr_t comRRT(RbPrmFullBodyPtr_t fullbody,
51  core::ProblemSolverPtr_t problemSolver,
52  const PathPtr_t comPath, const State& startState,
53  const State& nextState,
54  const std::size_t numOptimizations,
55  const bool keepExtraDof =
56  false); // needed because of the definition of t_rrt
57  // struct, but problemSolver is not used
58 
59 core::PathPtr_t comRRT(RbPrmFullBodyPtr_t fullbody,
60  core::ProblemPtr_t referenceProblem,
61  const PathPtr_t comPath, const State& startState,
62  const State& nextState,
63  const std::size_t numOptimizations,
64  const bool keepExtraDof = false);
65 
66 core::PathPtr_t comRRTFromPath(RbPrmFullBodyPtr_t fullbody,
67  core::ProblemSolverPtr_t problemSolver,
68  const PathPtr_t comPath,
69  const PathPtr_t guidePath,
70  const CIT_StateFrame& startState,
71  const CIT_StateFrame& endState,
72  const std::size_t numOptimizations);
73 
74 core::Configuration_t projectOnCom(RbPrmFullBodyPtr_t fullbody,
75  core::ProblemPtr_t referenceProblem,
76  const State& model,
77  const fcl::Vec3f& targetCom, bool& success);
78 
79 /*typedef
80 std::vector<pinocchio::vector_t,Eigen::aligned_allocator<pinocchio::vector_t> >
81 T_Configuration; core::PathPtr_t generateComTraj(const T_Configuration&
82 configurations, const pinocchio::value_type dt, const
83 pinocchio::ConfigurationIn_t & initSpeed, const pinocchio::ConfigurationIn_t
84 endSpeed);*/
85 } // namespace interpolation
86 } // namespace rbprm
87 } // namespace hpp
88 
89 #endif // HPP_RBPRM_COM_RRT_HH
Definition: time-constraint-helper.hh:45
core::PathPtr_t comRRTFromPath(RbPrmFullBodyPtr_t fullbody, core::ProblemSolverPtr_t problemSolver, const PathPtr_t comPath, const PathPtr_t guidePath, const CIT_StateFrame &startState, const CIT_StateFrame &endState, const std::size_t numOptimizations)
TimeConstraintHelper< TimeConstraintPath, ComRRTShooterFactory, SetComRRTConstraints > ComRRTHelper
Definition: com-rrt.hh:40
core::Configuration_t projectOnCom(RbPrmFullBodyPtr_t fullbody, core::ProblemPtr_t referenceProblem, const State &model, const fcl::Vec3f &targetCom, bool &success)
core::PathPtr_t comRRT(RbPrmFullBodyPtr_t fullbody, core::ProblemSolverPtr_t problemSolver, const PathPtr_t comPath, const State &startState, const State &nextState, const std::size_t numOptimizations, const bool keepExtraDof=false)
shared_ptr< RbPrmFullBody > RbPrmFullBodyPtr_t
Definition: kinematics_constraints.hh:11
T_StateFrame::const_iterator CIT_StateFrame
Definition: rbprm-state.hh:35
Definition: algorithm.hh:26
Definition: rbprm-state.hh:40
void operator()(ComRRTHelper &helper, const State &from, const State &to) const