Thread-safe implementation of a frontier-search task for an input costmap.
More...
#include <frontier_search.h>
|
Frontier | buildNewFrontier (unsigned int initial_cell, unsigned int reference, std::vector< bool > &frontier_flag) |
| Starting from an initial cell, build a frontier from valid adjacent cells. More...
|
|
double | frontierCost (const Frontier &frontier) |
| computes frontier cost More...
|
|
bool | isNewFrontierCell (unsigned int idx, const std::vector< bool > &frontier_flag) |
| isNewFrontierCell Evaluate if candidate cell is a valid candidate for a new frontier. More...
|
|
Thread-safe implementation of a frontier-search task for an input costmap.
Definition at line 26 of file frontier_search.h.
frontier_exploration::FrontierSearch::FrontierSearch |
( |
| ) |
|
|
inline |
frontier_exploration::FrontierSearch::FrontierSearch |
( |
costmap_2d::Costmap2D * |
costmap, |
|
|
double |
potential_scale, |
|
|
double |
gain_scale, |
|
|
double |
min_frontier_size |
|
) |
| |
Constructor for search task.
- Parameters
-
costmap | Reference to costmap data to search. |
Definition at line 17 of file frontier_search.cpp.
Frontier frontier_exploration::FrontierSearch::buildNewFrontier |
( |
unsigned int |
initial_cell, |
|
|
unsigned int |
reference, |
|
|
std::vector< bool > & |
frontier_flag |
|
) |
| |
|
protected |
Starting from an initial cell, build a frontier from valid adjacent cells.
- Parameters
-
initial_cell | Index of cell to start frontier building |
reference | Reference index to calculate position from |
frontier_flag | Flag vector indicating which cells are already marked as frontiers |
- Returns
- new frontier
Definition at line 97 of file frontier_search.cpp.
double frontier_exploration::FrontierSearch::frontierCost |
( |
const Frontier & |
frontier | ) |
|
|
protected |
computes frontier cost
cost function is defined by potential_scale and gain_scale
- Parameters
-
frontier | frontier for which compute the cost |
- Returns
- cost of the frontier
Definition at line 191 of file frontier_search.cpp.
bool frontier_exploration::FrontierSearch::isNewFrontierCell |
( |
unsigned int |
idx, |
|
|
const std::vector< bool > & |
frontier_flag |
|
) |
| |
|
protected |
isNewFrontierCell Evaluate if candidate cell is a valid candidate for a new frontier.
- Parameters
-
idx | Index of candidate cell |
frontier_flag | Flag vector indicating which cells are already marked as frontiers |
- Returns
- true if the cell is frontier cell
Definition at line 172 of file frontier_search.cpp.
Runs search implementation, outward from the start position.
- Parameters
-
position | Initial position to search from |
- Returns
- List of frontiers, if any
Definition at line 27 of file frontier_search.cpp.
double frontier_exploration::FrontierSearch::gain_scale_ |
|
private |
unsigned char* frontier_exploration::FrontierSearch::map_ |
|
private |
double frontier_exploration::FrontierSearch::min_frontier_size_ |
|
private |
double frontier_exploration::FrontierSearch::potential_scale_ |
|
private |
unsigned int frontier_exploration::FrontierSearch::size_x_ |
|
private |
unsigned int frontier_exploration::FrontierSearch::size_y_ |
|
private |
The documentation for this class was generated from the following files: