MIRA
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
GeneralBresenhamLineIteratorBase< Drive, DrivenByLongestAxis > Class Template Reference

Guaranteeing longest axis as drive axis allows some simplification/optimization in step. More...

#include <geometry/Bresenham.h>

Inheritance diagram for GeneralBresenhamLineIteratorBase< Drive, DrivenByLongestAxis >:
Inheritance graph
[legend]

Public Member Functions

int drivingAxis () const
 Returns dimension index of the driving axis. More...
 

Protected Member Functions

void checkForDrivingAxis (int index, const int64_t &dist, int64_t &maxd)
 
void step (AxisBase &axis, const AxisBase &drive)
 

Protected Attributes

int mDrivingAxis
 driving axis dimension index More...
 

Detailed Description

template<int Drive, bool DrivenByLongestAxis = (Drive < 0)>
class mira::GeneralBresenhamLineIteratorBase< Drive, DrivenByLongestAxis >

Guaranteeing longest axis as drive axis allows some simplification/optimization in step.

Since we provide a specialization for DrivenByLongestAxis=false, general version is only used for the case Drive < 0 (for which it implements the automatic determination of the longest axis as driving axis).

Member Function Documentation

◆ checkForDrivingAxis()

void checkForDrivingAxis ( int  index,
const int64_t &  dist,
int64_t &  maxd 
)
inlineprotected

◆ step()

void step ( AxisBase axis,
const AxisBase drive 
)
inlineprotected

◆ drivingAxis()

int drivingAxis ( ) const
inline

Returns dimension index of the driving axis.

Member Data Documentation

◆ mDrivingAxis

int mDrivingAxis
protected

driving axis dimension index


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