35 #ifndef NAV_GRID_ITERATORS_LINE_RAY_TRACE_H 36 #define NAV_GRID_ITERATORS_LINE_RAY_TRACE_H 57 RayTrace(
double x0,
double y0,
double x1,
double y1,
bool include_last_index =
true);
120 double x0,
double y0,
double x1,
double y1,
bool include_last_index,
121 double dx,
double dy,
double initial_error,
int loop_inc_x,
int loop_inc_y);
132 #endif // NAV_GRID_ITERATORS_LINE_RAY_TRACE_H
RayTrace & operator++()
Increase the iterator to the next element.
Abstract class for iterating over lines.
nav_grid::SignedIndex getFinalIndex() const override
Line Iterator with Ray Tracing (subpixel accuracy)
RayTrace begin() const
Helper function for range-style iteration.
RayTrace(double x0, double y0, double x1, double y1, bool include_last_index=true)
Public constructor.
bool operator!=(const RayTrace &other)
Test if two iterators are not equivalent - required for testing if iterator is at the end...
nav_grid::SignedIndex index_
void increment() override
Increase the iterator to the next element.
RayTrace end() const
Helper function for range-style iteration.
std::input_iterator_tag iterator_category
GenericIndex< int > SignedIndex
bool operator==(const RayTrace &other)
Test if two iterators are equivalent.