33 #if defined(StandardDSLQ0_RECURSES) 34 #error Recursive header files inclusion detected in StandardDSLQ0.h 35 #else // defined(StandardDSLQ0_RECURSES) 37 #define StandardDSLQ0_RECURSES 39 #if !defined StandardDSLQ0_h 41 #define StandardDSLQ0_h 46 #include "DGtal/base/Common.h" 47 #include "DGtal/base/ConstAlias.h" 48 #include "DGtal/arithmetic/IntegerComputer.h" 49 #include "DGtal/arithmetic/Pattern.h" 78 template <
typename TFraction>
85 typedef typename Fraction::Integer
Integer;
133 if (
this != &other )
231 IntegerParamType mu1 );
238 Fraction
slope()
const;
242 const Integer &
mu()
const;
268 Integer
r(
const Point & p )
const;
279 Point
lowestY( IntegerParamType x )
const;
285 Point
lowestX( IntegerParamType y )
const;
291 bool before(
const Point & p1,
const Point & p2 )
const;
293 bool beforeOrEqual(
const Point & p1,
const Point & p2 )
const;
328 const Point & A,
const Point & B )
const;
343 const Point & A,
const Point & B )
const;
359 Self
smartDSS(
const Point & A,
const Point & B )
const;
393 static Fraction
deepest( Fraction f1, Fraction f2, Fraction f3 );
394 static Fraction
deepest( Fraction f1, Fraction f2 );
404 template <
typename TFraction>
406 operator<< ( std::ostream & out, const StandardDSLQ0<TFraction> & object );
413 #include "DGtal/arithmetic/StandardDSLQ0.ih" 418 #endif // !defined StandardDSLQ0_h 420 #undef StandardDSLQ0_RECURSES 421 #endif // else defined(StandardDSLQ0_RECURSES) Point lowestY(IntegerParamType x) const
Point uppermostX(IntegerParamType y) const
std::forward_iterator_tag iterator_category
Aim: Represents a digital straight line with slope in the first quadrant (Q0: x >= 0...
ConstIterator end(Point p) const
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
Self & operator=(const Self &other)
NumberTraits< Integer >::ParamType IntegerParamType
IC::IntegerParamType IntegerParamType
Fraction::Quotient Quotient
SpaceND< 2, Integer >::Point Point2I
Integer myMu
the shift to origin.
bool operator==(const Self &other) const
Fraction::Integer Integer
bool operator!=(const Self &other) const
Self smartDSS(const Point &A, const Point &B) const
IC ic
Used in some computations.
static Fraction deepest(Fraction f1, Fraction f2, Fraction f3)
const Integer & mu() const
Self reversedSmartDSS(const Point &A, const Point &B) const
bool beforeOrEqual(const Point &p1, const Point &p2) const
const Pattern< Fraction > & pattern() const
void selfDisplay(std::ostream &out) const
ConstIterator begin(Point p) const
DGtal is the top-level namespace which contains all DGtal functions and types.
Self DSSWithinTwoPatterns(Point U1, Point U2, const Point &A, const Point &B) const
bool operator()(const Point &p) const
const StandardDSLQ0< TFraction > * myPtrDSL
bool before(const Point &p1, const Point &p2) const
Integer r(const Point &p) const
ConstIterator(ConstAlias< StandardDSLQ0< TFraction > > myDSL, const Point &p)
std::ptrdiff_t difference_type
Point uppermostY(IntegerParamType x) const
Fraction::UnsignedInteger UnsignedInteger
StandardDSLQ0< TFraction > Self
reference operator*() const
Point lowestX(IntegerParamType y) const
pointer operator->() const
ConstIterator(const Self &other)
SpaceND< 2, Integer >::Vector Vector2I
Pattern< Fraction > myPattern
the characteristic pattern of this DSL.
IntegerComputer< Integer > IC