MIRA
|
This header provides a set of functions to iterate over lines with the Bresenham or Bresenham Run-Slice Algorithm. More...
Go to the source code of this file.
Classes | |
class | BresenhamLineIterator |
Implements an iterator that is able to iterate over a Bresenham line point by point using the prefix ++operator and –operator. More... | |
class | GeneralBresenhamLineIteratorCommonBase |
struct | GeneralBresenhamLineIteratorCommonBase::AxisBase |
Data structure containing the numtype-independent relevant variables for one axis (dimension) of the line. More... | |
class | GeneralBresenhamLineIteratorBase< Drive, DrivenByLongestAxis > |
Guaranteeing longest axis as drive axis allows some simplification/optimization in step. More... | |
class | GeneralBresenhamLineIteratorBase< Drive, false > |
Specialization for DrivenByLongestAxis=false (driving axis given explicitly: No need to determine the drive axis, but stepping is a little more complex. More... | |
class | GeneralBresenhamLineIterator< D, T, Drive, Res > |
This more general iterator basically follows the design of BresenhamLineIterator, but works on an arbitrary-dimensional line and handles real-valued start and end positions. More... | |
struct | GeneralBresenhamLineIterator< D, T, Drive, Res >::Axis |
Add the type-dependent start and end value to the axis data struct. More... | |
Namespaces | |
mira | |
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec> | |
Functions | |
template<typename Visitor > | |
void | bresenham (int x0, int y0, int x1, int y1, Visitor &&visitor) |
Rasterizes a Bresenham line point by point starting at coordinate (x0,y0) and ending in (x1,y1). More... | |
template<typename Visitor > | |
void | bresenham (Point2i p0, Point2i p1, Visitor &&visitor) |
Different interface for standard Bresenham Algorithm. More... | |
template<typename Visitor > | |
void | bresenhamRunSlice (int x0, int y0, int x1, int y1, Visitor &&visitor) |
Rasterizes a Bresenham line starting at coordinate (x0,y0) and ending in (x1,y1). More... | |
template<typename Visitor > | |
void | bresenhamRunSlice (Point2i p0, Point2i p1, Visitor &&visitor) |
Different interface for Bresenham Run-Slice Algorithm. More... | |
This header provides a set of functions to iterate over lines with the Bresenham or Bresenham Run-Slice Algorithm.
It uses the visitor concept (see documentation examples) to implement the iteration.