31 #if defined(ChordGenericNaivePlaneComputer_RECURSES)
32 #error Recursive header files inclusion detected in ChordGenericNaivePlaneComputer.h
33 #else // defined(ChordGenericNaivePlaneComputer_RECURSES)
35 #define ChordGenericNaivePlaneComputer_RECURSES
37 #if !defined ChordGenericNaivePlaneComputer_h
39 #define ChordGenericNaivePlaneComputer_h
45 #include "DGtal/base/Common.h"
46 #include "DGtal/kernel/CInteger.h"
47 #include "DGtal/kernel/CSpace.h"
48 #include "DGtal/kernel/SpaceND.h"
49 #include "DGtal/kernel/PointVector.h"
50 #include "DGtal/arithmetic/IntegerComputer.h"
51 #include "DGtal/geometry/surfaces/ChordNaivePlaneComputer.h"
115 template <
typename TSpace,
116 typename TInputPoint,
117 typename TInternalScalar >
139 typedef typename InputPointSet::size_type
Size;
316 template <
typename TInputIterator>
317 bool extend( TInputIterator it, TInputIterator itE );
333 template <
typename TInputIterator>
334 bool isExtendable( TInputIterator it, TInputIterator itE )
const;
360 template <
typename Vector3D>
361 void getNormal( Vector3D & normal )
const;
369 template <
typename Vector3D>
432 template <
typename TSpace,
typename TInputPo
int,
typename TInternalScalar>
442 #include "DGtal/geometry/surfaces/ChordGenericNaivePlaneComputer.ih"
447 #endif // !defined ChordGenericNaivePlaneComputer_h
449 #undef ChordGenericNaivePlaneComputer_RECURSES
450 #endif // else defined(ChordGenericNaivePlaneComputer_RECURSES)
void getBounds(double &min, double &max) const
void init(InternalScalar widthNumerator=NumberTraits< InternalScalar >::ONE, InternalScalar widthDenominator=NumberTraits< InternalScalar >::ONE)
InputPointSet::iterator Iterator
Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.
InputPointSet::const_reference const_reference
Aim: The traits class for all models of Cinteger.
InputPointSet::const_iterator const_iterator
BOOST_STATIC_ASSERT((TSpace::dimension==3))
Primitive primitive() const
bool isExtendable(const InputPoint &p) const
~ChordGenericNaivePlaneComputer()
InputPoint::Coordinate Coordinate
InputPointSet::size_type Size
DGtal::uint32_t Dimension
ConstIterator end() const
InputPointSet::value_type value_type
ConstIterator begin() const
ChordComputer::Primitive Primitive
ChordGenericNaivePlaneComputer()
TInternalScalar InternalScalar
Aim: Concept checking for Signed Numbers. Models of this concept should be listed in NumberTraits cla...
InputPointSet::const_iterator ConstIterator
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
std::set< InputPoint > InputPointSet
std::vector< Dimension > myAxes
const InputPoint & minimalPoint() const
BOOST_CONCEPT_ASSERT((concepts::CSpace< TSpace >))
ChordNaivePlaneComputer< Space, InputPoint, InternalScalar > ChordComputer
InputPointSet::difference_type difference_type
DGtal is the top-level namespace which contains all DGtal functions and types.
bool operator()(const Point &p) const
void getNormal(Vector3D &normal) const
bool extend(const InputPoint &p)
Aim: A class that recognizes pieces of digital planes of given axis width. When the width is 1,...
Aim: A parallel strip in the space is the intersection of two parallel half-planes such that each hal...
void getUnitNormal(Vector3D &normal) const
void selfDisplay(std::ostream &out) const
ChordGenericNaivePlaneComputer & operator=(const ChordGenericNaivePlaneComputer &other)
std::vector< Dimension >::const_iterator AxisConstIterator
InternalScalar InternalVector[3]
std::vector< Dimension >::iterator AxisIterator
std::vector< Dimension > _axesToErase
bool extendAsIs(const InputPoint &p)
ChordComputer myComputers[3]
InputPointSet::const_pointer const_pointer
InputVector::Component Component
const InputPoint & maximalPoint() const
InputPointSet::size_type size_type