PathCostHeuristic.h
Go to the documentation of this file.
1 /*
2  * A footstep planner for humanoid robots
3  *
4  * Copyright 2010-2011 Johannes Garimort, Armin Hornung, University of Freiburg
5  * http://www.ros.org/wiki/footstep_planner
6  *
7  *
8  * This program is free software: you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation, version 3.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program. If not, see <http://www.gnu.org/licenses/>.
19  */
20 
21 #ifndef FOOTSTEP_PLANNER_PATHCOSTHEURISTIC_H_
22 #define FOOTSTEP_PLANNER_PATHCOSTHEURISTIC_H_
23 
25 #include <gridmap_2d/GridMap2D.h>
26 #include <sbpl/headers.h>
27 
28 
29 namespace footstep_planner
30 {
46 {
47 public:
48  PathCostHeuristic(double cell_size, int num_angle_bins,
49  double step_cost, double diff_angle_cost,
50  double max_step_width, double inflation_radius);
51  virtual ~PathCostHeuristic();
52 
57  virtual double getHValue(const PlanningState& current,
58  const PlanningState& to) const;
59 
66  bool calculateDistances(const PlanningState& from, const PlanningState& to);
67 
69 
70 private:
71  static const int cvObstacleThreshold = 200;
72 
73  unsigned char** ivpGrid;
74 
75  double ivStepCost;
79 
80  int ivGoalX;
81  int ivGoalY;
82 
85 
86  void resetGrid();
87 };
88 }
89 #endif // FOOTSTEP_PLANNER_PATHCOSTHEURISTIC_H_
PathCostHeuristic(double cell_size, int num_angle_bins, double step_cost, double diff_angle_cost, double max_step_width, double inflation_radius)
bool calculateDistances(const PlanningState &from, const PlanningState &to)
Calculates for each grid cell of the map a 2D path to the cell (to.x, to.y). For forward planning &#39;to...
Determining the heuristic value by calculating a 2D path from each grid cell of the map to the goal a...
void updateMap(gridmap_2d::GridMap2DPtr map)
An abstract super class providing methods necessary to be used as heuristic function within the Foots...
Definition: Heuristic.h:34
gridmap_2d::GridMap2DPtr ivMapPtr
virtual double getHValue(const PlanningState &current, const PlanningState &to) const
boost::shared_ptr< SBPL2DGridSearch > ivGridSearchPtr
A class representing the robot&#39;s pose (i.e. position and orientation) in the underlying SBPL...
Definition: PlanningState.h:45


footstep_planner
Author(s): Johannes Garimort, Armin Hornung
autogenerated on Mon Jun 10 2019 13:38:24