Aim: A base virtual class that represents a way to probe a neighborhood, used in the plane probing based estimators, see DGtal::PlaneProbingTetrahedronEstimator or DGtal::PlaneProbingParallelepipedEstimator.
More...
#include <DGtal/geometry/surfaces/estimation/PlaneProbingNeighborhood.h>
template<typename TPredicate>
class DGtal::PlaneProbingNeighborhood< TPredicate >
Aim: A base virtual class that represents a way to probe a neighborhood, used in the plane probing based estimators, see DGtal::PlaneProbingTetrahedronEstimator or DGtal::PlaneProbingParallelepipedEstimator.
Description of template class 'PlaneProbingNeighborhood'
- Template Parameters
-
Definition at line 65 of file PlaneProbingNeighborhood.h.
◆ Integer
template<typename TPredicate >
◆ Point
template<typename TPredicate >
◆ PointOnProbingRay
template<typename TPredicate >
◆ Predicate
template<typename TPredicate >
◆ Triangle
template<typename TPredicate >
◆ Vector
template<typename TPredicate >
◆ HexagonState
template<typename TPredicate >
Represents a configuration of the H-neighborhood.
Enumerator |
---|
Empty | None of the 6 points of the H-neighborhood belongs to the digital plane.
|
NonConvex | At least 2 points aligned with q in the digital plane.
|
NonPlanar | At least 3 consecutive points (a, b, c) where a and c are in the digital plane and b is not.
|
Planar | The underlying digital set represents a piece of digital plane.
|
Definition at line 81 of file PlaneProbingNeighborhood.h.
◆ PlaneProbingNeighborhood() [1/4]
template<typename TPredicate >
◆ PlaneProbingNeighborhood() [2/4]
template<typename TPredicate >
Constructor.
- Parameters
-
aPredicate | a probing predicate. |
aQ | the fixed point 'q'. |
aM | a frame composed of the three vectors. |
◆ ~PlaneProbingNeighborhood()
template<typename TPredicate >
◆ PlaneProbingNeighborhood() [3/4]
template<typename TPredicate >
Copy constructor.
- Parameters
-
other | the object to clone. |
◆ PlaneProbingNeighborhood() [4/4]
template<typename TPredicate >
Move constructor.
- Parameters
-
◆ absolutePoint()
template<typename TPredicate >
Returns the current point on the ray.
- Parameters
-
- Returns
- the current point on the ray.
◆ BOOST_CONCEPT_ASSERT()
template<typename TPredicate >
◆ classify()
template<typename TPredicate >
Classify the state of the H-neighborhood encoded as an array of 6 booleans.
- Parameters
-
- Returns
- the hexagon state, see HexagonState.
◆ closestCandidate()
template<typename TPredicate >
Computes the closest candidate point, used for updating a frame in a plane probing based estimator.
- Returns
- the update operation to apply.
◆ closestPointInList()
template<typename TPredicate >
Computes the closest point, among a list of candidates, using a Delaunay-based criterion.
- Parameters
-
aPoints | the list of points. |
- Returns
- the closest point.
◆ getOperation()
template<typename TPredicate >
Constructs an update operation from the closest candidate point.
- Parameters
-
aClosest | the closest candidate point. |
- Returns
- the update operation.
◆ hexagonState()
template<typename TPredicate >
◆ isNeighbor()
template<typename TPredicate >
Tests whether a ray should be probed or not, according to the current set of 'neighbors'.
- Parameters
-
aRay | the ray point to test. |
- Returns
- 'true' if aRay should be considered, 'false' otherwise.
◆ isSmallest()
template<typename TPredicate >
Computes the relative position of a point with respect to a sphere passing through 4 points (the three vertices of the current frame plus one point).
- Parameters
-
aX | 1 more input point. |
aY | the test point. |
- Returns
- 'true' if aY lies inside the sphere passing through vertices and aX.
◆ isValid()
template<typename TPredicate >
Checks the validity/consistency of the object.
- Returns
- 'true' if the object is valid, 'false' otherwise.
◆ operator=() [1/2]
template<typename TPredicate >
Copy assignment operator.
- Parameters
-
- Returns
- a reference on 'this'.
◆ operator=() [2/2]
template<typename TPredicate >
Move assignment operator.
- Parameters
-
- Returns
- a reference on 'this'.
◆ relativePoint()
template<typename TPredicate >
Returns the vector from the point q to the current point on the ray.
- Parameters
-
- Returns
- the vector from the fixed point 'q' to the current point on the ray.
◆ selfDisplay()
template<typename TPredicate >
Writes/Displays the object on an output stream.
- Parameters
-
out | the output stream where the object is written. |
◆ setNeighbors()
template<typename TPredicate >
◆ myCandidates
template<typename TPredicate >
◆ myM
template<typename TPredicate >
◆ myNeighborhood
template<typename TPredicate >
◆ myNeighbors
template<typename TPredicate >
◆ myPredicate
template<typename TPredicate >
◆ myQ
template<typename TPredicate >
The documentation for this class was generated from the following file: