Public Member Functions | Private Member Functions | Private Attributes
grid_map::SpiralIterator Class Reference

#include <SpiralIterator.hpp>

List of all members.

Public Member Functions

double getCurrentRadius () const
bool isPastEnd () const
bool operator!= (const SpiralIterator &other) const
const Eigen::Array2i & operator* () const
SpiralIteratoroperator++ ()
SpiralIteratoroperator= (const SpiralIterator &other)
 SpiralIterator (const grid_map::GridMap &gridMap, const Eigen::Vector2d &center, 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< IndexpointsRing_
double radius_
 Radius of the circle.
double radiusSquare_
 Square of the radius for efficiency.
double resolution_

Detailed Description

Iterator class to iterate through a circular area of the map with a spiral.

Definition at line 22 of file SpiralIterator.hpp.

Constructor & Destructor Documentation

grid_map::SpiralIterator::SpiralIterator ( const grid_map::GridMap gridMap,
const Eigen::Vector2d &  center,
const double  radius 


gridMapthe grid map to iterate on.
centerthe position of the circle center.
radiusthe radius of the circle.

Definition at line 18 of file SpiralIterator.cpp.

Member Function Documentation

Uses the current distance to get the points of a ring around the center.

Definition at line 84 of file SpiralIterator.cpp.

Gets the radius of current ring that is iterated through.

radius of the current ring that is used for iteration.

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.

true if inside, false otherwise.

Definition at line 76 of file SpiralIterator.cpp.

Indicates if iterator is past end.

true if iterator is out of scope, false if end has not been reached.

Definition at line 71 of file SpiralIterator.cpp.

bool grid_map::SpiralIterator::operator!= ( const SpiralIterator other) const

Compare to another iterator.

whether the current iterator points to a different address than the other one.

Definition at line 54 of file SpiralIterator.cpp.

const Eigen::Array2i & grid_map::SpiralIterator::operator* ( ) const

Dereference the iterator with const.

the value to which the iterator is pointing.

Definition at line 59 of file SpiralIterator.cpp.

SpiralIterator & grid_map::SpiralIterator::operator++ ( )

Increase the iterator to the next element.

a reference to the updated iterator.

Definition at line 64 of file SpiralIterator.cpp.

SpiralIterator & grid_map::SpiralIterator::operator= ( const SpiralIterator other)

Assignment operator.

iteratorthe iterator to copy data from.
a reference to *this.

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.

Member Data Documentation

Definition at line 109 of file SpiralIterator.hpp.

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.

Definition at line 91 of file SpiralIterator.hpp.

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.

Definition at line 103 of file SpiralIterator.hpp.

Radius of the circle.

Definition at line 95 of file SpiralIterator.hpp.

Square of the radius for efficiency.

Definition at line 98 of file SpiralIterator.hpp.

Definition at line 108 of file SpiralIterator.hpp.

The documentation for this class was generated from the following files:

Author(s): P├ęter Fankhauser
autogenerated on Mon Oct 9 2017 03:09:17