MIRA
Namespaces | Functions
RasterPolygon.h File Reference

Polygon rasterisation. More...

#include <geometry/RasterPolygonUtils.h>
#include <geometry/Rect.h>
Include dependency graph for RasterPolygon.h:

Go to the source code of this file.

Namespaces

 mira
 specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec>
 
 mira::Private
 

Functions

template<class Visitor >
bool processActiveEdges (ActiveEdgeCuts &activeEdges, const Rect2i &region, Visitor &visitor)
 Process all active edges at current y, advance y, remove any edges that are finished, then return. More...
 
template<class Visitor >
bool processTwoActiveEdges (ActiveEdgeCuts &activeEdges, const Rect2i &region, Visitor &visitor, const int nextY)
 Optimization of processActiveEdges() for exactly 2 active edges: None of them can finish before another edge gets active (or the polygon is done) - designated by nextY. More...
 
template<class Visitor >
bool processIntervals (const ActiveEdgeCuts &activeEdges, Intervals &intervals, const Rect2i &region, Visitor &visitor, uint precision)
 
template<class Visitor >
bool processActiveEdges (ActiveEdgeCuts &activeEdges, Intervals &intervals, const Rect2i &region, Visitor &visitor, uint precision)
 See above. More...
 
template<class Visitor >
bool processTwoActiveEdges (ActiveEdgeCuts &activeEdges, Intervals &intervals, const Rect2i &region, Visitor &visitor, const uint precision, const int nextY)
 See above. More...
 
template<class TransformationInRegion , class Visitor >
void rasterPolygon (const Polygon2f &polygon, const Rect2i &region, TransformationInRegion &&transformation, Visitor &&visitor)
 Function for rasterising a polygon. More...
 
template<class TransformationInRegion , class Visitor >
void rasterPolygon (const Polygon2f &polygon, const Rect2i &region, TransformationInRegion &&transformation, Visitor &&visitor, uint precision)
 Function for rasterising a polygon. More...
 

Detailed Description

Polygon rasterisation.

Author
Tom Mehner, Christof Schröter
Date
Nov 30, 2022