DGtal 1.4.0
|
Aim: Represent a way to probe the R-neighborhood, with the R1 optimization, see [103] 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 |
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 | PointOnProbingRay = detail::PointOnProbingRay<Integer> |
Private Member Functions | |
BOOST_CONCEPT_ASSERT ((concepts::CPointPredicate< TPredicate >)) | |
int | getNeighborhoodCode () const |
std::pair< PointOnProbingRay, PointOnProbingRay > | candidateRay (int 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 |
Aim: Represent a way to probe the R-neighborhood, with the R1 optimization, see [103] 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 >::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.
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 |
Copy constructor.
other | the object to clone. |
|
delete |
Move constructor.
other | the object to move. |
|
private |
|
private |
index | an integer between 0 and 2. |
|
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. |
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. |
|
delete |
Copy assignment operator.
other | the object to copy. |
|
delete |
Move assignment operator.
other | the object to move. |
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 147 of file PlaneProbingR1Neighborhood.h.