|
DGtal 1.4.2
|
Aim: model of CEuclideanOrientedShape and CEuclideanBoundedShape concepts to create a rounded hypercube in nD.. More...
#include <DGtal/shapes/implicit/ImplicitRoundedHyperCube.h>
Public Types | |
| typedef ImplicitRoundedHyperCube< TSpace > | Self |
| typedef TSpace | Space |
| typedef Space::RealPoint | RealPoint |
| typedef double | Value |
Public Member Functions | |
| ImplicitRoundedHyperCube (const RealPoint &aCenter, const double &aHalfWidth, const double aPower) | |
| ~ImplicitRoundedHyperCube () | |
| double | operator() (const RealPoint &aPoint) const |
| bool | isInside (const RealPoint &aPoint) const |
| Orientation | orientation (const RealPoint &aPoint) const |
| RealPoint | getLowerBound () const |
| RealPoint | getUpperBound () const |
| RealPoint | center () const |
| void | moveTo (const RealPoint &newCenter) |
| void | selfDisplay (std::ostream &out) const |
| bool | isValid () const |
Protected Member Functions | |
| ImplicitRoundedHyperCube () | |
Private Member Functions | |
| ImplicitRoundedHyperCube & | operator= (const ImplicitRoundedHyperCube &other) |
Private Attributes | |
| RealPoint | myCenter |
| Cube center. | |
| double | myHalfWidth |
| Cube HalfWidth. | |
| double | myPower |
| Cube Power. | |
Aim: model of CEuclideanOrientedShape and CEuclideanBoundedShape concepts to create a rounded hypercube in nD..
Description of template class 'ImplicitRoundedHyperCube'
Rounded hypercubes corresponds to balls for the \(l_p\) norm.
| TSpace | the Digital space definition. |
Definition at line 62 of file ImplicitRoundedHyperCube.h.
| Space::RealPoint DGtal::ImplicitRoundedHyperCube< TSpace >::RealPoint |
Definition at line 68 of file ImplicitRoundedHyperCube.h.
| ImplicitRoundedHyperCube<TSpace> DGtal::ImplicitRoundedHyperCube< TSpace >::Self |
Definition at line 66 of file ImplicitRoundedHyperCube.h.
| TSpace DGtal::ImplicitRoundedHyperCube< TSpace >::Space |
Definition at line 67 of file ImplicitRoundedHyperCube.h.
| double DGtal::ImplicitRoundedHyperCube< TSpace >::Value |
Definition at line 69 of file ImplicitRoundedHyperCube.h.
|
inline |
Constructor. Contructs a rounded hypercube with center aCenter and width aWidth.
| aCenter | the cube center. |
| aHalfWidth | the cube half-width. |
| aPower | the cube power. |
Definition at line 79 of file ImplicitRoundedHyperCube.h.
| DGtal::ImplicitRoundedHyperCube< TSpace >::~ImplicitRoundedHyperCube | ( | ) |
Destructor.
|
protected |
Constructor. Forbidden by default (protected to avoid g++ warnings).
|
inline |
Definition at line 175 of file ImplicitRoundedHyperCube.h.
References DGtal::ImplicitRoundedHyperCube< TSpace >::myCenter.
|
inline |
Returns the lower bound of the Shape bounding box.
Definition at line 155 of file ImplicitRoundedHyperCube.h.
References DGtal::PointVector< dim, TEuclideanRing, TContainer >::diagonal(), DGtal::ImplicitRoundedHyperCube< TSpace >::myCenter, and DGtal::ImplicitRoundedHyperCube< TSpace >::myHalfWidth.
|
inline |
Returns the upper bound of the Shape bounding box.
Definition at line 167 of file ImplicitRoundedHyperCube.h.
References DGtal::PointVector< dim, TEuclideanRing, TContainer >::diagonal(), DGtal::ImplicitRoundedHyperCube< TSpace >::myCenter, and DGtal::ImplicitRoundedHyperCube< TSpace >::myHalfWidth.
|
inline |
Return true if the given point belongs to the shape.
| aPoint | the point to evalute the function at. |
Definition at line 123 of file ImplicitRoundedHyperCube.h.
References DGtal::ImplicitRoundedHyperCube< TSpace >::operator()().
| bool DGtal::ImplicitRoundedHyperCube< TSpace >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
|
inline |
Modify the shape center
| newCenter | the new center position |
Definition at line 185 of file ImplicitRoundedHyperCube.h.
References DGtal::ImplicitRoundedHyperCube< TSpace >::myCenter.
|
inline |
Operator() of the implicit function. Given a point, it returns the function value at p. In Shapes, positive values are used to construct a set.
| aPoint | the point to evalute the function at. |
Definition at line 106 of file ImplicitRoundedHyperCube.h.
References aPoint(), DGtal::PointVector< dim, TEuclideanRing, TContainer >::dimension, DGtal::ImplicitRoundedHyperCube< TSpace >::myCenter, DGtal::ImplicitRoundedHyperCube< TSpace >::myHalfWidth, and DGtal::ImplicitRoundedHyperCube< TSpace >::myPower.
Referenced by DGtal::ImplicitRoundedHyperCube< TSpace >::isInside().
|
private |
Assignment.
| other | the object to copy. |
|
inline |
orientation predicate (see CEuclideanOrientedShape).
| aPoint | an input point. |
Definition at line 136 of file ImplicitRoundedHyperCube.h.
References DGtal::INSIDE, DGtal::ON, and DGtal::OUTSIDE.
| void DGtal::ImplicitRoundedHyperCube< TSpace >::selfDisplay | ( | std::ostream & | out | ) | const |
Writes/Displays the object on an output stream.
| out | the output stream where the object is written. |
|
private |
Cube center.
Definition at line 211 of file ImplicitRoundedHyperCube.h.
Referenced by DGtal::ImplicitRoundedHyperCube< TSpace >::center(), DGtal::ImplicitRoundedHyperCube< TSpace >::getLowerBound(), DGtal::ImplicitRoundedHyperCube< TSpace >::getUpperBound(), DGtal::ImplicitRoundedHyperCube< TSpace >::moveTo(), and DGtal::ImplicitRoundedHyperCube< TSpace >::operator()().
|
private |
Cube HalfWidth.
Definition at line 214 of file ImplicitRoundedHyperCube.h.
Referenced by DGtal::ImplicitRoundedHyperCube< TSpace >::getLowerBound(), DGtal::ImplicitRoundedHyperCube< TSpace >::getUpperBound(), and DGtal::ImplicitRoundedHyperCube< TSpace >::operator()().
|
private |
Cube Power.
Definition at line 217 of file ImplicitRoundedHyperCube.h.
Referenced by DGtal::ImplicitRoundedHyperCube< TSpace >::operator()().