|
DGtal 2.0.0
|
Aim: Represent a way to probe the R-neighborhood, with the R1 optimization, see [106] for details. More...
#include <DGtal/geometry/surfaces/estimation/PlaneProbingR1Neighborhood.h>
Public Types | |
| using | Predicate = TPredicate |
| using | Point = typename TPredicate::Point |
| using | Triangle = typename PlaneProbingRNeighborhood<TPredicate>::Triangle |
| using | PointOnProbingRay = typename PlaneProbingRNeighborhood<TPredicate>::PointOnProbingRay |
| using | Integer = typename Point::Coordinate |
| using | HexagonState = typename PlaneProbingRNeighborhood<TPredicate>::HexagonState |
| using | Index = typename PlaneProbingRNeighborhood<TPredicate>::Index |
| Public Types inherited from DGtal::PlaneProbingRNeighborhood< TPredicate > | |
| using | Predicate = TPredicate |
| using | Point = typename TPredicate::Point |
| using | Triangle = typename PlaneProbingNeighborhood<TPredicate>::Triangle |
| using | Integer = typename PlaneProbingNeighborhood<TPredicate>::Integer |
| using | PointOnProbingRay = typename PlaneProbingNeighborhood<TPredicate>::PointOnProbingRay |
| using | HexagonState = typename PlaneProbingNeighborhood<TPredicate>::HexagonState |
| Public Types inherited from DGtal::PlaneProbingNeighborhood< TPredicate > | |
| enum class | HexagonState { Empty , NonConvex , NonPlanar , Planar } |
| using | Predicate = TPredicate |
| using | Point = typename Predicate::Point |
| using | Vector = Point |
| using | Integer = typename Point::Coordinate |
| using | Triangle = std::array<Vector, 3> |
| using | Index = std::size_t |
| using | PointOnProbingRay = detail::PointOnProbingRay<Integer,Index> |
Private Member Functions | |
| BOOST_CONCEPT_ASSERT ((concepts::CPointPredicate< TPredicate >)) | |
| int | getNeighborhoodCode () const |
| std::pair< PointOnProbingRay, PointOnProbingRay > | candidateRay (Index const &index) const |
| std::vector< PointOnProbingRay > | intersectSphereRay (PointOnProbingRay const &aPoint, PointOnProbingRay const &aRay) const |
| bool | isValidIntersectSphereRay (PointOnProbingRay const &aPoint, PointOnProbingRay const &aRay, std::vector< PointOnProbingRay > const &aLst) const |
| PointOnProbingRay | closestPointOnRayConstant (PointOnProbingRay const &aRay) const |
| PointOnProbingRay | closestPointOnRayLinear (PointOnProbingRay const &aRay) const |
| PointOnProbingRay | closestRayPoint (std::pair< PointOnProbingRay, PointOnProbingRay > const &aRayPoint) const |
Private Attributes | |
| std::array< bool, 6 > | myState |
Additional Inherited Members | |
| Protected Member Functions inherited from DGtal::PlaneProbingRNeighborhood< TPredicate > | |
| template<typename TPointAdapter> | |
| TPointAdapter | closestPointOnRayLogWithPredicate (TPointAdapter const &aRay) const |
| template<typename TPointAdapter> | |
| TPointAdapter | closestPointOnRayLinearWithPredicate (TPointAdapter const &aRay) const |
| Protected Member Functions inherited from DGtal::PlaneProbingNeighborhood< TPredicate > | |
| template<class TPointAdapter> | |
| TPointAdapter | closestPointInList (std::vector< TPointAdapter > const &aPoints) const |
| bool | isNeighbor (PointOnProbingRay const &aRay) const |
| bool | isSmallest (Point const &aX, Point const &aY) const |
| template<class TPointAdapter> | |
| Point | relativePoint (TPointAdapter const &aPoint) const |
| template<class TPointAdapter> | |
| Point | absolutePoint (TPointAdapter const &aPoint) const |
| Protected Attributes inherited from DGtal::PlaneProbingNeighborhood< TPredicate > | |
| Predicate const & | myPredicate |
| Point const & | myQ |
| Triangle const & | myM |
| std::vector< PointOnProbingRay > | myCandidates |
| std::vector< PointOnProbingRay > | myNeighbors |
| Static Protected Attributes inherited from DGtal::PlaneProbingNeighborhood< TPredicate > | |
| static const PointOnProbingRay | myNeighborhood [6] |
Aim: Represent a way to probe the R-neighborhood, with the R1 optimization, see [106] for details.
Description of template class 'PlaneProbingR1Neighborhood'
| TPredicate | the probing predicate, a model of concepts::CPointPredicate. |
Definition at line 63 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::HexagonState = typename PlaneProbingRNeighborhood<TPredicate>::HexagonState |
Definition at line 74 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::Index = typename PlaneProbingRNeighborhood<TPredicate>::Index |
Definition at line 76 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::Integer = typename Point::Coordinate |
Definition at line 73 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::Point = typename TPredicate::Point |
Definition at line 70 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::PointOnProbingRay = typename PlaneProbingRNeighborhood<TPredicate>::PointOnProbingRay |
Definition at line 72 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::Predicate = TPredicate |
Definition at line 69 of file PlaneProbingR1Neighborhood.h.
| using DGtal::PlaneProbingR1Neighborhood< TPredicate >::Triangle = typename PlaneProbingRNeighborhood<TPredicate>::Triangle |
Definition at line 71 of file PlaneProbingR1Neighborhood.h.
|
delete |
Default constructor.
Referenced by operator=(), operator=(), PlaneProbingR1Neighborhood(), and PlaneProbingR1Neighborhood().
| DGtal::PlaneProbingR1Neighborhood< TPredicate >::PlaneProbingR1Neighborhood | ( | Predicate const & | aPredicate, |
| Point const & | aQ, | ||
| Triangle const & | aM ) |
Constructor.
| aPredicate | a probing predicate. |
| aQ | the fixed point 'q'. |
| aM | a frame composed of the three vectors. |
| DGtal::PlaneProbingR1Neighborhood< TPredicate >::~PlaneProbingR1Neighborhood | ( | ) |
Destructor.
|
delete |
|
delete |
|
private |
|
private |
| index | an integer between 0 and 2. |
References index().
|
private |
| aRay | a ray. |
|
private |
| aRay | a ray. |
|
private |
| aRayPoint | a pair describing a ray and a point on a ray. |
|
private |
|
overridevirtual |
Computes the current state of the neighborhood. This is the function that is overloaded for the different probing modes.
Reimplemented from DGtal::PlaneProbingRNeighborhood< TPredicate >.
|
private |
| aPoint | a point on a ray. |
| aRay | a ray. |
References aPoint.
| bool DGtal::PlaneProbingR1Neighborhood< TPredicate >::isValid | ( | ) | const |
Checks the validity/consistency of the object.
|
private |
Sanity check for point returned by intersectSphereRay.
| aPoint | a point on a ray. |
| aRay | a ray. |
| aLst | a list of points on a ray. |
References aPoint.
|
delete |
Copy assignment operator.
| other | the object to copy. |
References PlaneProbingR1Neighborhood().
|
delete |
Move assignment operator.
| other | the object to move. |
References PlaneProbingR1Neighborhood().
| void DGtal::PlaneProbingR1Neighborhood< TPredicate >::selfDisplay | ( | std::ostream & | out | ) | const |
Writes/Displays the object on an output stream.
| out | the output stream where the object is written. |
|
mutableprivate |
The current state of the H-neighborhood.
Definition at line 149 of file PlaneProbingR1Neighborhood.h.