#include <InflationFilter.hpp>
|
unsigned char | computeCost (double distance) const |
| Given a distance, compute a cost.
|
|
double | getCostScalingFactor () |
|
double | getInflationRadius () |
|
| InflationFilter () |
|
void | matchSize (easynav::Costmap2D &costmap) |
| Match the size of the master costmap.
|
|
virtual std::expected< void, std::string > | on_initialize () |
|
virtual void | update (NavState &nav_state) |
|
void | updateBounds (double robot_x, double robot_y, double robot_yaw, double *min_x, double *min_y, double *max_x, double *max_y) |
| Update the bounds of the master costmap by this layer's update dimensions.
|
|
void | updateCosts (easynav::Costmap2D &master_grid, int min_i, int min_j, int max_i, int max_j) |
| Update the costs in the master costmap in the window.
|
|
| CostmapFilter () |
|
std::expected< void, std::string > | initialize (const std::shared_ptr< rclcpp_lifecycle::LifecycleNode > parent_node, const std::string plugin_name) |
|
|
unsigned int | cellDistance (easynav::Costmap2D &costmap, double world_dist) |
| Compute cached dsitances.
|
|
void | computeCaches () |
| Compute cached dsitances.
|
|
unsigned char | costLookup (unsigned int mx, unsigned int my, unsigned int src_x, unsigned int src_y) |
| Lookup pre-computed costs.
|
|
double | distanceLookup (unsigned int mx, unsigned int my, unsigned int src_x, unsigned int src_y) |
| Lookup pre-computed distances.
|
|
void | enqueue (unsigned int index, unsigned int mx, unsigned int my, unsigned int src_x, unsigned int src_y) |
| Enqueue new cells in cache distance update search.
|
|
int | generateIntegerDistances () |
| Compute cached dsitances.
|
|
std::shared_ptr< rclcpp_lifecycle::LifecycleNode > | get_node () const |
|
const std::string & | get_plugin_name () const |
|
◆ InflationFilter()
◆ cellDistance()
Compute cached dsitances.
◆ computeCaches()
Compute cached dsitances.
◆ computeCost()
unsigned char computeCost |
( |
double | distance | ) |
const |
Given a distance, compute a cost.
- Parameters
-
distance | The distance from an obstacle in cells |
- Returns
- A cost value for the distance
◆ costLookup()
unsigned char costLookup |
( |
unsigned int | mx, |
|
|
unsigned int | my, |
|
|
unsigned int | src_x, |
|
|
unsigned int | src_y ) |
|
protected |
Lookup pre-computed costs.
- Parameters
-
mx | The x coordinate of the current cell |
my | The y coordinate of the current cell |
src_x | The x coordinate of the source cell |
src_y | The y coordinate of the source cell |
- Returns
◆ distanceLookup()
double distanceLookup |
( |
unsigned int | mx, |
|
|
unsigned int | my, |
|
|
unsigned int | src_x, |
|
|
unsigned int | src_y ) |
|
protected |
Lookup pre-computed distances.
- Parameters
-
mx | The x coordinate of the current cell |
my | The y coordinate of the current cell |
src_x | The x coordinate of the source cell |
src_y | The y coordinate of the source cell |
- Returns
◆ enqueue()
void enqueue |
( |
unsigned int | index, |
|
|
unsigned int | mx, |
|
|
unsigned int | my, |
|
|
unsigned int | src_x, |
|
|
unsigned int | src_y ) |
|
protected |
Enqueue new cells in cache distance update search.
Given an index of a cell in the costmap, place it into a list pending for obstacle inflation.
- Parameters
-
grid | The costmap |
index | The index of the cell |
mx | The x coordinate of the cell (can be computed from the index, but saves time to store it) |
my | The y coordinate of the cell (can be computed from the index, but saves time to store it) |
src_x | The x index of the obstacle point inflation started at |
src_y | The y index of the obstacle point inflation started at |
◆ generateIntegerDistances()
int generateIntegerDistances |
( |
| ) |
|
|
protected |
Compute cached dsitances.
◆ getCostScalingFactor()
double getCostScalingFactor |
( |
| ) |
|
◆ getInflationRadius()
double getInflationRadius |
( |
| ) |
|
◆ matchSize()
Match the size of the master costmap.
◆ on_initialize()
std::expected< void, std::string > on_initialize |
( |
| ) |
|
|
virtual |
◆ update()
void update |
( |
NavState & | nav_state | ) |
|
|
virtual |
◆ updateBounds()
void updateBounds |
( |
double | robot_x, |
|
|
double | robot_y, |
|
|
double | robot_yaw, |
|
|
double * | min_x, |
|
|
double * | min_y, |
|
|
double * | max_x, |
|
|
double * | max_y ) |
Update the bounds of the master costmap by this layer's update dimensions.
- Parameters
-
robot_x | X pose of robot |
robot_y | Y pose of robot |
robot_yaw | Robot orientation |
min_x | X min map coord of the window to update |
min_y | Y min map coord of the window to update |
max_x | X max map coord of the window to update |
max_y | Y max map coord of the window to update |
◆ updateCosts()
void updateCosts |
( |
easynav::Costmap2D & | master_grid, |
|
|
int | min_i, |
|
|
int | min_j, |
|
|
int | max_i, |
|
|
int | max_j ) |
Update the costs in the master costmap in the window.
- Parameters
-
master_grid | The master costmap grid to update |
min_x | X min map coord of the window to update |
min_y | Y min map coord of the window to update |
max_x | X max map coord of the window to update |
max_y | Y max map coord of the window to update |
◆ cache_length_
unsigned int cache_length_ |
|
protected |
◆ cached_cell_inflation_radius_
unsigned int cached_cell_inflation_radius_ |
|
protected |
◆ cached_costs_
std::vector<unsigned char> cached_costs_ |
|
protected |
◆ cached_distances_
std::vector<double> cached_distances_ |
|
protected |
◆ cell_inflation_radius_
unsigned int cell_inflation_radius_ |
|
protected |
◆ cost_scaling_factor_
double cost_scaling_factor_ |
|
protected |
◆ distance_matrix_
std::vector<std::vector<int> > distance_matrix_ |
|
protected |
◆ inflate_around_unknown_
bool inflate_around_unknown_ |
|
protected |
◆ inflate_unknown_
◆ inflation_cells_
std::vector<std::vector<CellData> > inflation_cells_ |
|
protected |
◆ inflation_radius_
◆ inscribed_radius_
◆ last_max_x_
◆ last_max_y_
◆ last_min_x_
◆ last_min_y_
◆ matchedSize_
bool matchedSize_ {false} |
|
protected |
◆ need_reinflation_
◆ resolution_
◆ seen_
The documentation for this class was generated from the following files: