DGtal 1.4.0
|
Aim: This class is a wrapper around ArithmeticalDSS that is devoted to the dynamic recognition of digital straight segments (DSS) along any sequence of digital points. More...
#include <DGtal/geometry/curves/ArithmeticalDSSComputer.h>
Public Types | |
typedef TIterator | ConstIterator |
typedef IteratorCirculatorTraits< ConstIterator >::Value | Point |
typedef IteratorCirculatorTraits< TIterator >::Value::Coordinate | Coordinate |
typedef TInteger | Integer |
typedef ArithmeticalDSS< Coordinate, Integer, adjacency > | DSS |
typedef DSS | Primitive |
typedef Point | Vector |
typedef ArithmeticalDSSComputer< ConstIterator, TInteger, adjacency > | Self |
typedef ArithmeticalDSSComputer< ReverseIterator< ConstIterator >, TInteger, adjacency > | Reverse |
Protected Attributes | |
DSS | myDSS |
ConstIterator | myBegin |
ConstIterator | myEnd |
Aim: This class is a wrapper around ArithmeticalDSS that is devoted to the dynamic recognition of digital straight segments (DSS) along any sequence of digital points.
See Digital straight lines and segments for further details. See also classes NaiveDSS8Computer and StandardDSS4Computer, which are aliases of this class.
TIterator | type of iterator on 2d digital points, at least readable and forward. |
TInteger | type of integers used for the computation of remainders, which is a model of CInteger. |
adjacency | an unsigned integer equal to 4 for standard (simply 4-connected) DSS or 8 for naive (simply 8-connected) DSS (default). |
This class is a model of CDynamicBidirectionalSegmentComputer. It is also default constructible, copy constructible, assignable and equality comparable.
Definition at line 86 of file ArithmeticalDSSComputer.h.
typedef TIterator DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::ConstIterator |
Type of iterator, at least readable and forward
Definition at line 95 of file ArithmeticalDSSComputer.h.
typedef IteratorCirculatorTraits<TIterator>::Value::Coordinate DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Coordinate |
Type of coordinate
Definition at line 108 of file ArithmeticalDSSComputer.h.
typedef ArithmeticalDSS<Coordinate, Integer, adjacency> DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::DSS |
Type of objects that represents DSSs
Definition at line 120 of file ArithmeticalDSSComputer.h.
typedef TInteger DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Integer |
Type of integer, devoted to remainders (and intercepts)
Definition at line 114 of file ArithmeticalDSSComputer.h.
typedef IteratorCirculatorTraits<ConstIterator>::Value DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Point |
Type of 2d digital point
Definition at line 102 of file ArithmeticalDSSComputer.h.
typedef DSS DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Primitive |
Type of primitive representation, defined as an alias of DSS
Definition at line 127 of file ArithmeticalDSSComputer.h.
typedef ArithmeticalDSSComputer<ReverseIterator<ConstIterator>,TInteger,adjacency> DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Reverse |
Definition at line 135 of file ArithmeticalDSSComputer.h.
typedef ArithmeticalDSSComputer<ConstIterator,TInteger,adjacency> DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Self |
Definition at line 134 of file ArithmeticalDSSComputer.h.
typedef Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Vector |
Type of vector, defined as an alias of point
Definition at line 132 of file ArithmeticalDSSComputer.h.
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::ArithmeticalDSSComputer | ( | ) |
Default constructor. not valid
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::ArithmeticalDSSComputer | ( | const ConstIterator & | it | ) |
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::ArithmeticalDSSComputer | ( | const ArithmeticalDSSComputer< TIterator, TInteger, adjacency > & | other | ) |
Copy constructor.
other | the object to clone. |
|
inline |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::a | ( | ) | const |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::b | ( | ) | const |
Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::back | ( | ) | const |
ConstIterator DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::begin | ( | ) | const |
Referenced by checkSubArithmeticDSS(), and checkSubStandardDSLQ0().
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::BOOST_CONCEPT_ASSERT | ( | (boost_concepts::ForwardTraversalConcept< ConstIterator >) | ) |
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::BOOST_CONCEPT_ASSERT | ( | (boost_concepts::ReadableIteratorConcept< ConstIterator >) | ) |
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::BOOST_CONCEPT_ASSERT | ( | (concepts::CInteger< Coordinate >) | ) |
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::BOOST_CONCEPT_ASSERT | ( | (concepts::CInteger< Integer >) | ) |
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::BOOST_STATIC_ASSERT | ( | (concepts::ConceptUtils::SameType< Point, typename DSS::Point >::value) | ) |
DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::BOOST_STATIC_ASSERT | ( | (Point::dimension==2) | ) |
ConstIterator DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::end | ( | ) | const |
Referenced by testDSSreco().
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::extendBack | ( | ) |
Tests whether the current DSS can be extended at the back. Computes the parameters of the extended DSS if yes.
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::extendFront | ( | ) |
Tests whether the current DSS can be extended at the front. Computes the parameters of the extended DSS if yes.
Referenced by testDSSreco().
Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::front | ( | ) | const |
Reverse DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::getReverse | ( | ) | const |
Self DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::getSelf | ( | ) | const |
void DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::init | ( | const ConstIterator & | it | ) |
Initialisation.
it | an iterator on 2D points |
Referenced by main(), testDSSreco(), and testIsInsideForOneQuadrant().
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isExtendableBack | ( | ) |
Tests whether the current DSS can be extended at the back.
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isExtendableFront | ( | ) |
Tests whether the current DSS can be extended at the front.
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isInDSL | ( | const ConstIterator & | it | ) | const |
Checks whether a point is in the bounding DSL of minimal parameters
it | an iterator on the point to be checked |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isInDSL | ( | const Point & | aPoint | ) | const |
Checks whether a point is in the bounding DSL of minimal parameters
aPoint | the point to be checked |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isInDSS | ( | const ConstIterator & | it | ) | const |
Checks whether a point belongs to the DSS or not
it | an iterator on the point to be checked |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isInDSS | ( | const Point & | aPoint | ) | const |
Checks whether a point belongs to the DSS or not
aPoint | the point to be checked |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
Referenced by testDSSreco().
Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Lf | ( | ) | const |
Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Ll | ( | ) | const |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::mu | ( | ) | const |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::omega | ( | ) | const |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::operator!= | ( | const ArithmeticalDSSComputer< TIterator, TInteger, adjacency > & | other | ) | const |
Difference operator.
other | the object to compare with. |
ArithmeticalDSSComputer & DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::operator= | ( | const ArithmeticalDSSComputer< TIterator, TInteger, adjacency > & | other | ) |
Assignment.
other | the object to copy. |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::operator== | ( | const ArithmeticalDSSComputer< TIterator, TInteger, adjacency > & | other | ) | const |
Equality operator.
other | the object to compare with. |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::position | ( | const ConstIterator & | it | ) | const |
Computes the position of a point (that does not necessarily belong to the DSS)
it | an iterator on points |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::position | ( | const Point & | aPoint | ) | const |
Computes the position of a point (that does not necessarily belong to the DSS)
aPoint | the point whose position is returned |
const Primitive & DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::primitive | ( | ) | const |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::remainder | ( | const ConstIterator & | it | ) | const |
Computes the remainder of a point (that does not necessarily belong to the DSS)
it | an iterator on points |
Integer DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::remainder | ( | const Point & | aPoint | ) | const |
Computes the remainder of a point (that does not necessarily belong to the DSS)
aPoint | the point whose remainder is returned |
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::retractBack | ( | ) |
Removes the back point of the DSS if it has more than two points
bool DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::retractFront | ( | ) |
Removes the front point of the DSS if it has more than two points
void DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::selfDisplay | ( | std::ostream & | out | ) | const |
Writes/Displays the object on an output stream.
out | the output stream where the object is written. |
Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Uf | ( | ) | const |
Point DGtal::ArithmeticalDSSComputer< TIterator, TInteger, adjacency >::Ul | ( | ) | const |
|
protected |
begin iterator
Definition at line 393 of file ArithmeticalDSSComputer.h.
|
protected |
DSS representation
Definition at line 389 of file ArithmeticalDSSComputer.h.
|
protected |
end iterator
Definition at line 397 of file ArithmeticalDSSComputer.h.