Public Member Functions | Private Member Functions | Private Attributes
cost_map::CircleIterator Class Reference

#include <circle_iterator.hpp>

List of all members.

Public Member Functions

 CircleIterator (const CostMap &gridMap, const Position &center, const double radius)
bool isPastEnd () const
bool operator!= (const CircleIterator &other) const
const Indexoperator* () const
CircleIteratoroperator++ ()
CircleIteratoroperator= (const CircleIterator &other)

Private Member Functions

void findSubmapParameters (const Position &center, const double radius, Index &startIndex, Size &bufferSize) const
bool isInside () const

Private Attributes

Size bufferSize_
Index bufferStartIndex_
Position center_
 Position of the circle center;.
std::shared_ptr< SubmapIteratorinternalIterator_
 Grid submap iterator.
Length mapLength_
 Map information needed to get position from iterator.
Position mapPosition_
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.

Definition at line 19 of file circle_iterator.hpp.


Constructor & Destructor Documentation

cost_map::CircleIterator::CircleIterator ( const CostMap gridMap,
const Position center,
const double  radius 
)

Constructor.

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

Definition at line 16 of file circle_iterator.cpp.


Member Function Documentation

void cost_map::CircleIterator::findSubmapParameters ( const Position center,
const double  radius,
Index startIndex,
Size bufferSize 
) const [private]

Finds the submap that fully contains the circle and returns the parameters.

Parameters:
[in]centerthe position of the circle center.
[in]radiusthe radius of the circle.
[out]startIndexthe start index of the submap.
[out]bufferSizethe buffer size of the submap.

Definition at line 82 of file circle_iterator.cpp.

bool cost_map::CircleIterator::isInside ( ) const [private]

Check if current index is inside the circle.

Returns:
true if inside, false otherwise.

Definition at line 74 of file circle_iterator.cpp.

Indicates if iterator is past end.

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

Definition at line 69 of file circle_iterator.cpp.

bool cost_map::CircleIterator::operator!= ( const CircleIterator other) const

Compare to another iterator.

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

Definition at line 47 of file circle_iterator.cpp.

const Index & cost_map::CircleIterator::operator* ( ) const

Dereference the iterator with const.

Returns:
the value to which the iterator is pointing.

Definition at line 52 of file circle_iterator.cpp.

CircleIterator & cost_map::CircleIterator::operator++ ( )

Increase the iterator to the next element.

Returns:
a reference to the updated iterator.

Definition at line 57 of file circle_iterator.cpp.

CircleIterator & cost_map::CircleIterator::operator= ( const CircleIterator other)

Assignment operator.

Parameters:
iteratorthe iterator to copy data from.
Returns:
a reference to *this.

Definition at line 33 of file circle_iterator.cpp.


Member Data Documentation

Definition at line 96 of file circle_iterator.hpp.

Definition at line 97 of file circle_iterator.hpp.

Position of the circle center;.

Definition at line 81 of file circle_iterator.hpp.

Grid submap iterator.

Definition at line 90 of file circle_iterator.hpp.

Map information needed to get position from iterator.

Definition at line 93 of file circle_iterator.hpp.

Definition at line 94 of file circle_iterator.hpp.

Radius of the circle.

Definition at line 84 of file circle_iterator.hpp.

Square of the radius for efficiency.

Definition at line 87 of file circle_iterator.hpp.

Definition at line 95 of file circle_iterator.hpp.


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


cost_map_core
Author(s): Daniel Stonier
autogenerated on Thu Jun 6 2019 20:27:46