Main Page
Namespaces
Classes
Files
File List
File Members
include
footstep_planner
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
24
#include <
footstep_planner/Heuristic.h
>
25
#include <
gridmap_2d/GridMap2D.h
>
26
#include <sbpl/headers.h>
27
28
29
namespace
footstep_planner
30
{
45
class
PathCostHeuristic
:
public
Heuristic
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
68
void
updateMap
(
gridmap_2d::GridMap2DPtr
map);
69
70
private
:
71
static
const
int
cvObstacleThreshold
= 200;
72
73
unsigned
char
**
ivpGrid
;
74
75
double
ivStepCost
;
76
double
ivDiffAngleCost
;
77
double
ivMaxStepWidth
;
78
double
ivInflationRadius
;
79
80
int
ivGoalX
;
81
int
ivGoalY
;
82
83
gridmap_2d::GridMap2DPtr
ivMapPtr
;
84
boost::shared_ptr<SBPL2DGridSearch>
ivGridSearchPtr
;
85
86
void
resetGrid
();
87
};
88
}
89
#endif // FOOTSTEP_PLANNER_PATHCOSTHEURISTIC_H_
footstep_planner::PathCostHeuristic::~PathCostHeuristic
virtual ~PathCostHeuristic()
Definition:
PathCostHeuristic.cpp:43
footstep_planner::PathCostHeuristic::ivMaxStepWidth
double ivMaxStepWidth
Definition:
PathCostHeuristic.h:77
footstep_planner::PathCostHeuristic::PathCostHeuristic
PathCostHeuristic(double cell_size, int num_angle_bins, double step_cost, double diff_angle_cost, double max_step_width, double inflation_radius)
Definition:
PathCostHeuristic.cpp:26
footstep_planner::PathCostHeuristic::calculateDistances
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 'to...
Definition:
PathCostHeuristic.cpp:104
footstep_planner::PathCostHeuristic
Determining the heuristic value by calculating a 2D path from each grid cell of the map to the goal a...
Definition:
PathCostHeuristic.h:45
footstep_planner::PathCostHeuristic::updateMap
void updateMap(gridmap_2d::GridMap2DPtr map)
Definition:
PathCostHeuristic.cpp:135
footstep_planner::Heuristic
An abstract super class providing methods necessary to be used as heuristic function within the Foots...
Definition:
Heuristic.h:34
boost::shared_ptr< GridMap2D >
footstep_planner::PathCostHeuristic::ivMapPtr
gridmap_2d::GridMap2DPtr ivMapPtr
Definition:
PathCostHeuristic.h:83
footstep_planner::PathCostHeuristic::getHValue
virtual double getHValue(const PlanningState ¤t, const PlanningState &to) const
Definition:
PathCostHeuristic.cpp:51
footstep_planner::PathCostHeuristic::ivDiffAngleCost
double ivDiffAngleCost
Definition:
PathCostHeuristic.h:76
Heuristic.h
footstep_planner::PathCostHeuristic::ivStepCost
double ivStepCost
Definition:
PathCostHeuristic.h:75
footstep_planner::PathCostHeuristic::ivpGrid
unsigned char ** ivpGrid
Definition:
PathCostHeuristic.h:73
footstep_planner::PathCostHeuristic::ivGoalX
int ivGoalX
Definition:
PathCostHeuristic.h:80
footstep_planner::PathCostHeuristic::resetGrid
void resetGrid()
Definition:
PathCostHeuristic.cpp:174
footstep_planner::PathCostHeuristic::ivInflationRadius
double ivInflationRadius
Definition:
PathCostHeuristic.h:78
GridMap2D.h
footstep_planner::PathCostHeuristic::cvObstacleThreshold
static const int cvObstacleThreshold
Definition:
PathCostHeuristic.h:71
footstep_planner::PathCostHeuristic::ivGridSearchPtr
boost::shared_ptr< SBPL2DGridSearch > ivGridSearchPtr
Definition:
PathCostHeuristic.h:84
footstep_planner::PlanningState
A class representing the robot's pose (i.e. position and orientation) in the underlying SBPL...
Definition:
PlanningState.h:45
footstep_planner::PathCostHeuristic::ivGoalY
int ivGoalY
Definition:
PathCostHeuristic.h:81
footstep_planner
Definition:
Footstep.h:28
footstep_planner
Author(s): Johannes Garimort, Armin Hornung
autogenerated on Mon Jun 10 2019 13:38:24