#include <SpiralIterator.hpp>
Public Member Functions | |
double | getCurrentRadius () const |
bool | isPastEnd () const |
bool | operator!= (const SpiralIterator &other) const |
const Eigen::Array2i & | operator* () const |
SpiralIterator & | operator++ () |
SpiralIterator & | operator= (const SpiralIterator &other) |
SpiralIterator (const grid_map::GridMap &gridMap, const Eigen::Vector2d ¢er, const double radius) | |
Private Member Functions | |
void | generateRing () |
bool | isInside (const Index index) const |
int | signum (const int val) |
Private Attributes | |
Size | bufferSize_ |
Position | center_ |
Position of the circle center;. | |
unsigned int | distance_ |
Index | indexCenter_ |
Length | mapLength_ |
Map information needed to get position from iterator. | |
Position | mapPosition_ |
unsigned int | nRings_ |
Number of rings into the circle is divided. | |
std::vector< Index > | pointsRing_ |
double | radius_ |
Radius of the circle. | |
double | radiusSquare_ |
Square of the radius for efficiency. | |
double | resolution_ |
Iterator class to iterate through a circular area of the map with a spiral.
Definition at line 22 of file SpiralIterator.hpp.
grid_map::SpiralIterator::SpiralIterator | ( | const grid_map::GridMap & | gridMap, |
const Eigen::Vector2d & | center, | ||
const double | radius | ||
) |
Constructor.
gridMap | the grid map to iterate on. |
center | the position of the circle center. |
radius | the radius of the circle. |
Definition at line 18 of file SpiralIterator.cpp.
void grid_map::SpiralIterator::generateRing | ( | ) | [private] |
Uses the current distance to get the points of a ring around the center.
Definition at line 84 of file SpiralIterator.cpp.
double grid_map::SpiralIterator::getCurrentRadius | ( | ) | const |
Gets the radius of current ring that is iterated through.
Definition at line 116 of file SpiralIterator.cpp.
bool grid_map::SpiralIterator::isInside | ( | const Index | index | ) | const [private] |
Check if index is inside the circle.
Definition at line 76 of file SpiralIterator.cpp.
bool grid_map::SpiralIterator::isPastEnd | ( | ) | const |
Indicates if iterator is past end.
Definition at line 71 of file SpiralIterator.cpp.
bool grid_map::SpiralIterator::operator!= | ( | const SpiralIterator & | other | ) | const |
Compare to another iterator.
Definition at line 54 of file SpiralIterator.cpp.
const Eigen::Array2i & grid_map::SpiralIterator::operator* | ( | ) | const |
Dereference the iterator with const.
Definition at line 59 of file SpiralIterator.cpp.
SpiralIterator & grid_map::SpiralIterator::operator++ | ( | ) |
Increase the iterator to the next element.
Definition at line 64 of file SpiralIterator.cpp.
SpiralIterator & grid_map::SpiralIterator::operator= | ( | const SpiralIterator & | other | ) |
Assignment operator.
iterator | the iterator to copy data from. |
Definition at line 38 of file SpiralIterator.cpp.
int grid_map::SpiralIterator::signum | ( | const int | val | ) | [inline, private] |
Definition at line 85 of file SpiralIterator.hpp.
Size grid_map::SpiralIterator::bufferSize_ [private] |
Definition at line 109 of file SpiralIterator.hpp.
Position grid_map::SpiralIterator::center_ [private] |
Position of the circle center;.
Definition at line 90 of file SpiralIterator.hpp.
unsigned int grid_map::SpiralIterator::distance_ [private] |
Definition at line 102 of file SpiralIterator.hpp.
Index grid_map::SpiralIterator::indexCenter_ [private] |
Definition at line 91 of file SpiralIterator.hpp.
Length grid_map::SpiralIterator::mapLength_ [private] |
Map information needed to get position from iterator.
Definition at line 106 of file SpiralIterator.hpp.
Definition at line 107 of file SpiralIterator.hpp.
unsigned int grid_map::SpiralIterator::nRings_ [private] |
Number of rings into the circle is divided.
Definition at line 101 of file SpiralIterator.hpp.
std::vector<Index> grid_map::SpiralIterator::pointsRing_ [private] |
Definition at line 103 of file SpiralIterator.hpp.
double grid_map::SpiralIterator::radius_ [private] |
Radius of the circle.
Definition at line 95 of file SpiralIterator.hpp.
double grid_map::SpiralIterator::radiusSquare_ [private] |
Square of the radius for efficiency.
Definition at line 98 of file SpiralIterator.hpp.
double grid_map::SpiralIterator::resolution_ [private] |
Definition at line 108 of file SpiralIterator.hpp.