31#if defined(PlaneProbingParallelepipedEstimator_RECURSES)
32#error Recursive header files inclusion detected in PlaneProbingParallelepipedEstimator.h
35#define PlaneProbingParallelepipedEstimator_RECURSES
37#if !defined PlaneProbingParallelepipedEstimator_h
39#define PlaneProbingParallelepipedEstimator_h
44#include "DGtal/base/Common.h"
45#include "DGtal/geometry/helpers/PlaneProbingEstimatorHelper.h"
46#include "DGtal/geometry/surfaces/estimation/PlaneProbingTetrahedronEstimator.h"
47#include "DGtal/kernel/CPointPredicate.h"
61 template <
typename TPredicate, ProbingMode mode>
71 using Point =
typename Predicate::Point;
73 using Integer =
typename Predicate::Integer;
217 bool advance (std::vector<PointOnProbingRay>
const& aNeighbors);
328 template <
typename TPredicate, ProbingMode mode>
337#include "DGtal/geometry/surfaces/estimation/PlaneProbingParallelepipedEstimator.ih"
344#undef PlaneProbingParallelepipedEstimator_RECURSES
NotAbovePredicate & operator=(const NotAbovePredicate &other)
NotAbovePredicate(Predicate const &aPredicate, Integer const &aBound, Self *aParallelepipedEstimator)
Self * myParallelpipedEstimator
bool operator()(Point const &aPoint) const
const Predicate * myPredicate
typename Self::Integer Integer
typename Self::Point Point
bool inPlane(Point const &aPoint) const
bool isSeparating() const
void selfDisplay(std::ostream &out) const
typename TetrahedronEstimator::HexagonState HexagonState
typename TetrahedronEstimator::UpdateOperation UpdateOperation
bool isInReverseState() const
bool inPlane(Point const &aPoint) const
BOOST_CONCEPT_ASSERT((concepts::CPointPredicate< TPredicate >))
typename TetrahedronEstimator::PointOnProbingRay PointOnProbingRay
typename Predicate::Integer Integer
typename TetrahedronEstimator::Triangle Triangle
Vector m(int aIndex) const
TetrahedronEstimator myTetrahedronEstimator
std::vector< UpdateOperation > geometricalDecomposition(UpdateOperation const &aOp) const
PlaneProbingParallelepipedEstimator(PlaneProbingParallelepipedEstimator &&other)=delete
PlaneProbingParallelepipedEstimator()=delete
PlaneProbingParallelepipedEstimator(Point const &aPoint, Triangle const &aM, Predicate const &aPredicate, Integer const &aBound)
PlaneProbingParallelepipedEstimator(const PlaneProbingParallelepipedEstimator &other)=delete
HexagonState hexagonState() const
typename Predicate::Point Point
PlaneProbingParallelepipedEstimator & operator=(const PlaneProbingParallelepipedEstimator &other)=delete
~PlaneProbingParallelepipedEstimator()=default
std::pair< Vector, Vector > getBasis() const
typename TetrahedronEstimator::Quantity Quantity
bool advance(std::vector< PointOnProbingRay > const &aNeighbors)
Quantity compute(std::vector< PointOnProbingRay > const &aNeighbors)
NotAbovePredicate myNotAbovePredicate
bool translateIf(UpdateOperation const &aOp)
typename Neighborhood::Triangle Triangle
typename Neighborhood::HexagonState HexagonState
typename Neighborhood::UpdateOperation UpdateOperation
typename Neighborhood::PointOnProbingRay PointOnProbingRay
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
Aim: Defines a predicate on a point.