DGtal 1.3.0
|
Aim: Parallelepidec region of a digital space, model of a 'CDomain'. More...
#include <DGtal/kernel/domains/HyperRectDomain.h>
Data Structures | |
struct | ConstSubRange |
Aim: range through some subdomain of all the points in the domain. Defines a constructor taking a domain in parameter plus some additional parameters to specify the subdomain, begin and end methods returning ConstIterator, and rbegin and rend methods returning ConstReverseIterator. More... | |
Public Types | |
typedef HyperRectDomain< TSpace > | Self |
typedef TSpace | Space |
typedef HyperRectDomain< Space > | Domain |
typedef Space::Point | Point |
typedef Space::Integer | Integer |
typedef Space::Vector | Vector |
typedef Space::Dimension | Dimension |
typedef Space::Size | Size |
typedef Point::Coordinate | Coordinate |
typedef HyperRectDomain_Iterator< Point > | Iterator |
Typedef of domain iterators. More... | |
typedef HyperRectDomain_ReverseIterator< Iterator > | ReverseIterator |
typedef Iterator | ConstIterator |
typedef ReverseIterator | ConstReverseIterator |
typedef functors::IsWithinPointPredicate< Point > | Predicate |
Public Member Functions | |
BOOST_STATIC_CONSTANT (Dimension, dimension=Space::dimension) | |
HyperRectDomain () | |
HyperRectDomain (const Point &lowerPoint, const Point &upperPoint) | |
HyperRectDomain (const typename Space::RealPoint &lowerPoint, const typename Space::RealPoint &upperPoint) | |
~HyperRectDomain () | |
HyperRectDomain (const HyperRectDomain &other) | |
HyperRectDomain & | operator= (const HyperRectDomain &other) |
const ConstIterator & | begin () const |
ConstIterator | begin (const Point &aPoint) const |
const ConstIterator & | end () const |
ConstReverseIterator | rbegin () const |
ConstReverseIterator | rbegin (const Point &aPoint) const |
ConstReverseIterator | rend () const |
ConstSubRange | subRange (const std::vector< Dimension > &permutation) const |
ConstSubRange | subRange (const std::vector< Dimension > &permutation, const Point &startingPoint) const |
ConstSubRange | subRange (Dimension adim, const Point &startingPoint) const |
ConstSubRange | subRange (Dimension adim1, Dimension adim2, const Point &startingPoint) const |
ConstSubRange | subRange (Dimension adim1, Dimension adim2, Dimension adim3, const Point &startingPoint) const |
ConstSubRange | subRange (std::initializer_list< Dimension > permutation) |
ConstSubRange | subRange (std::initializer_list< Dimension > permutation, const Point &startingPoint) |
Size | size () const |
const Point & | lowerBound () const |
const Point & | upperBound () const |
bool | isInside (const Point &p) const |
bool | isEmpty () const |
const Predicate & | predicate () const |
std::string | className () const |
void | selfDisplay (std::ostream &out) const |
bool | isValid () const |
Data Fields | |
Point | myLowerBound |
The lowest point of the space diagonal. More... | |
Point | myUpperBound |
The highest point of the space diagonal. More... | |
Private Member Functions | |
BOOST_CONCEPT_ASSERT ((concepts::CSpace< TSpace >)) | |
Private Attributes | |
Predicate | myPredicate |
"IsInside" predicate. More... | |
ConstIterator | myIteratorBegin |
Begin iterator. More... | |
ConstIterator | myIteratorEnd |
End iterator. More... | |
Aim: Parallelepidec region of a digital space, model of a 'CDomain'.
Description of class 'HyperRectDomain'
The following code snippet demonstrates how to use HyperRectDomain
More informations can be found in the module page about Digital Spaces, Points, Vectors and Domains .
Definition at line 99 of file HyperRectDomain.h.
typedef Iterator DGtal::HyperRectDomain< TSpace >::ConstIterator |
Definition at line 125 of file HyperRectDomain.h.
typedef ReverseIterator DGtal::HyperRectDomain< TSpace >::ConstReverseIterator |
Definition at line 126 of file HyperRectDomain.h.
typedef Point::Coordinate DGtal::HyperRectDomain< TSpace >::Coordinate |
Definition at line 118 of file HyperRectDomain.h.
typedef Space::Dimension DGtal::HyperRectDomain< TSpace >::Dimension |
Definition at line 116 of file HyperRectDomain.h.
typedef HyperRectDomain<Space> DGtal::HyperRectDomain< TSpace >::Domain |
Definition at line 112 of file HyperRectDomain.h.
typedef Space::Integer DGtal::HyperRectDomain< TSpace >::Integer |
Definition at line 114 of file HyperRectDomain.h.
typedef HyperRectDomain_Iterator<Point> DGtal::HyperRectDomain< TSpace >::Iterator |
Typedef of domain iterators.
Definition at line 123 of file HyperRectDomain.h.
typedef Space::Point DGtal::HyperRectDomain< TSpace >::Point |
Definition at line 113 of file HyperRectDomain.h.
typedef functors::IsWithinPointPredicate<Point> DGtal::HyperRectDomain< TSpace >::Predicate |
Definition at line 128 of file HyperRectDomain.h.
typedef HyperRectDomain_ReverseIterator<Iterator> DGtal::HyperRectDomain< TSpace >::ReverseIterator |
Definition at line 124 of file HyperRectDomain.h.
typedef HyperRectDomain<TSpace> DGtal::HyperRectDomain< TSpace >::Self |
Definition at line 106 of file HyperRectDomain.h.
typedef Space::Size DGtal::HyperRectDomain< TSpace >::Size |
Definition at line 117 of file HyperRectDomain.h.
typedef TSpace DGtal::HyperRectDomain< TSpace >::Space |
Definition at line 110 of file HyperRectDomain.h.
typedef Space::Vector DGtal::HyperRectDomain< TSpace >::Vector |
Definition at line 115 of file HyperRectDomain.h.
DGtal::HyperRectDomain< TSpace >::HyperRectDomain | ( | ) |
Default Constructor.
DGtal::HyperRectDomain< TSpace >::HyperRectDomain | ( | const Point & | lowerPoint, |
const Point & | upperPoint | ||
) |
Constructor from two points
lowerPoint | and |
upperPoint | defining the space diagonal. |
DGtal::HyperRectDomain< TSpace >::HyperRectDomain | ( | const typename Space::RealPoint & | lowerPoint, |
const typename Space::RealPoint & | upperPoint | ||
) |
Constructor from two points
lowerPoint | and |
upperPoint | with real coordinates and that define the space diagonal. |
The domain actualy defined is the smallest domain with integer bounds that contains the two given points.
DGtal::HyperRectDomain< TSpace >::~HyperRectDomain | ( | ) |
Destructor.
DGtal::HyperRectDomain< TSpace >::HyperRectDomain | ( | const HyperRectDomain< TSpace > & | other | ) |
Copy constructor.
other | the object to clone. Forbidden by default. |
|
inline |
begin method.
Definition at line 176 of file HyperRectDomain.h.
References DGtal::HyperRectDomain< TSpace >::myIteratorBegin.
Referenced by displayPredicate(), displaySimplicityTable(), generateRefImage(), lightBetween(), localDualVolume(), main(), DGtal::Shortcuts< TKSpace >::makeBinaryImage(), Object3D(), pointsInStandardPlane(), DGtal::HyperRectDomain< TSpace >::rbegin(), DGtal::HyperRectDomain< TSpace >::rend(), DGtal::ImageFactoryFromHDF5< TImageContainer >::requestImage(), SCENARIO(), TEST_CASE(), testBoard2D(), testComparison(), testDigitalSetDomain(), testDigitalSetDraw(), testDisplayDT3d(), testDistanceTransformation3D(), testDistanceTransformND(), testDraw(), testExpander(), testImageAdapter(), testImageOnRef(), testIterator(), testKanungo2D(), testObject(), testObject3D(), testObjectBorder(), testObjectGraph(), testSetFromImage(), testSimplePoints3D(), testVoronoiCovarianceMeasure(), testVoronoiMap(), and testWriteAndRead().
|
inline |
begin method from a given point.
aPoint | the initial point. |
Definition at line 187 of file HyperRectDomain.h.
References aPoint(), DGtal::HyperRectDomain< TSpace >::isInside(), DGtal::HyperRectDomain< TSpace >::myLowerBound, and DGtal::HyperRectDomain< TSpace >::myUpperBound.
|
private |
DGtal::HyperRectDomain< TSpace >::BOOST_STATIC_CONSTANT | ( | Dimension | , |
dimension | = Space::dimension |
||
) |
std::string DGtal::HyperRectDomain< TSpace >::className | ( | ) | const |
Default drawing style object.
Referenced by checkCut(), checkOutputConvexHullBorder(), displaySimplicityTable(), drawArithmeticalDSL(), exampleNaiveDSL(), exampleNaiveDSS(), exampleStandardDSL(), exampleStandardDSS(), exampleUpdate(), main(), showGreedySegmantation(), specificTestLatticePolytope2D(), testBIGINTEGERSpace(), testBoard2D(), testBoard2DCustomStyle(), testBoard3D(), testBreadthFirstPropagation(), testCellDrawOnBoard(), testDepthFirstPropagation(), testDigitalSetBoardSnippet(), testDigitalSetDraw(), testDigitization(), testDistancePropagation(), testDraw(), testDSS4drawing(), testDSS8drawing(), testLatticePolytope2D(), testLayers(), testObjectBorder(), testSetTable(), testSimpleExpander(), testSimplePoints2D(), and testSurfelAdjacency().
|
inline |
end method.
Definition at line 201 of file HyperRectDomain.h.
References DGtal::HyperRectDomain< TSpace >::myIteratorEnd.
Referenced by displayPredicate(), displaySimplicityTable(), generateRefImage(), lightBetween(), localDualVolume(), main(), DGtal::Shortcuts< TKSpace >::makeBinaryImage(), Object3D(), pointsInStandardPlane(), DGtal::HyperRectDomain< TSpace >::rbegin(), DGtal::ImageFactoryFromHDF5< TImageContainer >::requestImage(), SCENARIO(), TEST_CASE(), testBoard2D(), testComparison(), testDigitalSetDomain(), testDigitalSetDraw(), testDisplayDT3d(), testDistanceTransformation3D(), testDistanceTransformND(), testDraw(), testExpander(), testImageAdapter(), testImageOnRef(), testIterator(), testKanungo2D(), testObject(), testObject3D(), testObjectBorder(), testObjectGraph(), testSetFromImage(), testSimplePoints3D(), testVoronoiCovarianceMeasure(), testVoronoiMap(), and testWriteAndRead().
bool DGtal::HyperRectDomain< TSpace >::isEmpty | ( | ) | const |
Referenced by TEST_CASE().
bool DGtal::HyperRectDomain< TSpace >::isInside | ( | const Point & | p | ) | const |
p | any point. |
Referenced by DGtal::HyperRectDomain< TSpace >::begin(), main(), and DGtal::HyperRectDomain< TSpace >::rbegin().
bool DGtal::HyperRectDomain< TSpace >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
Referenced by TEST_CASE().
const Point & DGtal::HyperRectDomain< TSpace >::lowerBound | ( | ) | const |
Returns the lowest point of the space diagonal.
Referenced by alphaShape(), DGtal::ArrayImageAdapter< TArrayIterator, HyperRectDomain< TSpace > >::ArrayImageAdapter(), calcPointModuloDomain(), cmpTranslatedFFT(), getComplex(), DGtal::Shortcuts< TKSpace >::getKSpace(), laplace_sphere(), laplacian(), main(), Object3D(), sum_fn_on_domain(), TEST_CASE(), testCombinatorialSurface(), testDigitalSetBoundary(), testDigitalSetSelector(), testDigitalSurface(), testDigitalSurfaceBoostGraphInterface(), testGenericReader(), testIterator(), testIteratorHelperImpl(), testObjectGraph(), testOrderingDigitalSurfaceFacesAroundVertex(), and testUmbrellaComputer().
HyperRectDomain & DGtal::HyperRectDomain< TSpace >::operator= | ( | const HyperRectDomain< TSpace > & | other | ) |
Assignment.
other | the object to copy. |
const Predicate & DGtal::HyperRectDomain< TSpace >::predicate | ( | ) | const |
|
inline |
reverse begin method.
Definition at line 210 of file HyperRectDomain.h.
References DGtal::HyperRectDomain< TSpace >::end().
Referenced by TEST_CASE(), TEST_CASE_METHOD(), and testIterator().
|
inline |
reverse begin method from a given point.
aPoint | the initial point. |
Definition at line 221 of file HyperRectDomain.h.
References aPoint(), DGtal::HyperRectDomain< TSpace >::begin(), DGtal::HyperRectDomain< TSpace >::isInside(), DGtal::HyperRectDomain< TSpace >::myLowerBound, and DGtal::HyperRectDomain< TSpace >::myUpperBound.
|
inline |
reverse end method.
Definition at line 236 of file HyperRectDomain.h.
References DGtal::HyperRectDomain< TSpace >::begin().
Referenced by TEST_CASE(), TEST_CASE_METHOD(), and testIterator().
void DGtal::HyperRectDomain< TSpace >::selfDisplay | ( | std::ostream & | out | ) | const |
Writes/Displays the object on an output stream.
out | the output stream where the object is written. |
|
inline |
Definition at line 565 of file HyperRectDomain.h.
References DGtal::SpaceND< dim, TInteger >::dimension, DGtal::HyperRectDomain< TSpace >::myLowerBound, and DGtal::HyperRectDomain< TSpace >::myUpperBound.
Referenced by ArrayImageAdapter_example(), main(), moduleImages_example(), SCENARIO(), TEST_CASE(), TEST_CASE_METHOD(), test_image(), test_range_constRange(), testIteratorHelper(), testSetFromImage(), and testVoronoiCovarianceMeasure().
|
inline |
get a subRange.
permutation | a vector containing the dimensions used for the subrange. Dimensions are iterated in the given order. |
Definition at line 472 of file HyperRectDomain.h.
References DGtal::HyperRectDomain< TSpace >::myLowerBound.
Referenced by DGtal::ImageFactoryFromHDF5< TImageContainer >::flushImage(), main(), TEST_CASE(), TEST_CASE_METHOD(), and testIterator().
|
inline |
get a subRange from an initial point.
permutation | a vector containing the dimensions used for the subrange. Dimensions are iterated in the given order. |
startingPoint | the initial point. |
Definition at line 485 of file HyperRectDomain.h.
|
inline |
get a subRange of one dimension.
adim | the dimension of the subrange. |
startingPoint | the initial point. |
Definition at line 498 of file HyperRectDomain.h.
|
inline |
get a subRange of two dimensions.
adim1 | the first dimension of the subrange. |
adim2 | the second dimension of the subrange. |
startingPoint | the initial point. |
Definition at line 512 of file HyperRectDomain.h.
|
inline |
get a subRange of three dimensions.
adim1 | the first dimension of the subrange. |
adim2 | the second dimension of the subrange. |
adim3 | the third dimension of the subrange. |
startingPoint | the initial point. |
Definition at line 527 of file HyperRectDomain.h.
|
inline |
get a subRange.
permutation | an initializer_list containing the dimensions used for the subrange. Dimensions are iterated in the given order. |
Definition at line 539 of file HyperRectDomain.h.
References DGtal::HyperRectDomain< TSpace >::myLowerBound.
|
inline |
get a subRange from an initial point.
permutation | an initializer_list containing the dimensions used for the subrange. Dimensions are iterated in the given order. |
startingPoint | the initial point. |
Definition at line 552 of file HyperRectDomain.h.
const Point & DGtal::HyperRectDomain< TSpace >::upperBound | ( | ) | const |
Returns the highest point of the space diagonal.
Referenced by alphaShape(), DGtal::ArrayImageAdapter< TArrayIterator, HyperRectDomain< TSpace > >::ArrayImageAdapter(), calcPointModuloDomain(), cmpTranslatedFFT(), getComplex(), DGtal::Shortcuts< TKSpace >::getKSpace(), laplace_sphere(), laplacian(), main(), Object3D(), TEST_CASE(), testCombinatorialSurface(), testDigitalSetBoundary(), testDigitalSetSelector(), testDigitalSurface(), testDigitalSurfaceBoostGraphInterface(), testGenericReader(), testIterator(), testIteratorHelperImpl(), testObjectGraph(), testOrderingDigitalSurfaceFacesAroundVertex(), and testUmbrellaComputer().
|
private |
Begin iterator.
Definition at line 652 of file HyperRectDomain.h.
Referenced by DGtal::HyperRectDomain< TSpace >::begin().
|
private |
End iterator.
Definition at line 654 of file HyperRectDomain.h.
Referenced by DGtal::HyperRectDomain< TSpace >::end().
Point DGtal::HyperRectDomain< TSpace >::myLowerBound |
The lowest point of the space diagonal.
Definition at line 642 of file HyperRectDomain.h.
Referenced by DGtal::HyperRectDomain< TSpace >::begin(), DGtal::HyperRectDomain< TSpace >::rbegin(), DGtal::HyperRectDomain< TSpace >::size(), and DGtal::HyperRectDomain< TSpace >::subRange().
|
private |
"IsInside" predicate.
Definition at line 649 of file HyperRectDomain.h.
Point DGtal::HyperRectDomain< TSpace >::myUpperBound |
The highest point of the space diagonal.
Definition at line 644 of file HyperRectDomain.h.
Referenced by DGtal::HyperRectDomain< TSpace >::begin(), DGtal::HyperRectDomain< TSpace >::rbegin(), and DGtal::HyperRectDomain< TSpace >::size().