DGtal 1.3.0
|
Aim: Representing digital planes, which are digitizations of Euclidean planes, as point predicates. More...
#include <DGtal/geometry/surfaces/DigitalPlanePredicate.h>
Public Types | |
using | Self = DigitalPlanePredicate< TSpace > |
using | Space = TSpace |
using | Integer = typename Space::Integer |
using | Point = typename Space::Point |
using | Vector = typename Space::Vector |
Public Member Functions | |
DigitalPlanePredicate ()=default | |
DigitalPlanePredicate (Vector const &aN, Integer const &aMu, Integer const &aNu) | |
~DigitalPlanePredicate ()=default | |
DigitalPlanePredicate (const DigitalPlanePredicate &other) | |
DigitalPlanePredicate (DigitalPlanePredicate &&other) | |
DigitalPlanePredicate & | operator= (const DigitalPlanePredicate &other) |
DigitalPlanePredicate & | operator= (DigitalPlanePredicate &&other) |
Vector const & | normal () const |
Integer | mu () const |
Integer | nu () const |
bool | operator() (Point const &aPoint) const |
void | selfDisplay (std::ostream &out) const |
bool | isValid () const |
Private Member Functions | |
BOOST_CONCEPT_ASSERT ((concepts::CSpace< TSpace >)) | |
Private Attributes | |
Vector | myNormal |
Integer | myMu |
Integer | myNu |
Aim: Representing digital planes, which are digitizations of Euclidean planes, as point predicates.
Description of template class 'DigitalPlanePredicate'
A digital plane is a digitization of a Euclidean plane, it can be seen as the set of digital points comprised between two parallel Euclidean planes.
If N is a normal vector, \( \mu \) the lower bound and \( \nu \) the thickness then the corresponding digital plane is the set of digital points \( x \) such that \( \mu \leq x \cdot N < \mu + \nu \).
When \( \nu = \| N \|_1 \), then it represents a standard digital plane, and when \( \nu = \| N \|_\infty \), then it represents a naive digital plane.
TSpace | any digital space, i.e., a model of CSpace. |
Models: A DigitalPlanePredicate is a model of concepts::CPointPredicate.
Definition at line 72 of file DigitalPlanePredicate.h.
using DGtal::DigitalPlanePredicate< TSpace >::Integer = typename Space::Integer |
Definition at line 80 of file DigitalPlanePredicate.h.
using DGtal::DigitalPlanePredicate< TSpace >::Point = typename Space::Point |
Definition at line 81 of file DigitalPlanePredicate.h.
using DGtal::DigitalPlanePredicate< TSpace >::Self = DigitalPlanePredicate<TSpace> |
Definition at line 78 of file DigitalPlanePredicate.h.
using DGtal::DigitalPlanePredicate< TSpace >::Space = TSpace |
Definition at line 79 of file DigitalPlanePredicate.h.
using DGtal::DigitalPlanePredicate< TSpace >::Vector = typename Space::Vector |
Definition at line 82 of file DigitalPlanePredicate.h.
|
default |
Default constructor.
DGtal::DigitalPlanePredicate< TSpace >::DigitalPlanePredicate | ( | Vector const & | aN, |
Integer const & | aMu, | ||
Integer const & | aNu | ||
) |
Constructor from normal, lower bound and thickness.
aN | vector that defines the normal of the plane. |
aMu | constant that defines the lower bound. |
aNu | constant that defines the thickness. |
|
default |
Destructor.
DGtal::DigitalPlanePredicate< TSpace >::DigitalPlanePredicate | ( | const DigitalPlanePredicate< TSpace > & | other | ) |
Copy constructor.
other | the object to clone. |
DGtal::DigitalPlanePredicate< TSpace >::DigitalPlanePredicate | ( | DigitalPlanePredicate< TSpace > && | other | ) |
Move constructor.
other | the object to move. |
|
private |
bool DGtal::DigitalPlanePredicate< TSpace >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
Integer DGtal::DigitalPlanePredicate< TSpace >::mu | ( | ) | const |
Vector const & DGtal::DigitalPlanePredicate< TSpace >::normal | ( | ) | const |
Integer DGtal::DigitalPlanePredicate< TSpace >::nu | ( | ) | const |
bool DGtal::DigitalPlanePredicate< TSpace >::operator() | ( | Point const & | aPoint | ) | const |
Checks whether a point aPoint belongs to the digital plane.
aPoint | any digital point. |
DigitalPlanePredicate & DGtal::DigitalPlanePredicate< TSpace >::operator= | ( | const DigitalPlanePredicate< TSpace > & | other | ) |
Copy assignment operator.
other | the object to copy. |
DigitalPlanePredicate & DGtal::DigitalPlanePredicate< TSpace >::operator= | ( | DigitalPlanePredicate< TSpace > && | other | ) |
Move assignment operator.
other | the object to move. |
void DGtal::DigitalPlanePredicate< TSpace >::selfDisplay | ( | std::ostream & | out | ) | const |
Writes/Displays the object on an output stream.
out | the output stream where the object is written. |
|
private |
The lower bound.
Definition at line 178 of file DigitalPlanePredicate.h.
|
private |
The normal vector.
Definition at line 177 of file DigitalPlanePredicate.h.
|
private |
The thickness.
Definition at line 179 of file DigitalPlanePredicate.h.