31#if defined(ChordGenericNaivePlaneComputer_RECURSES)
32#error Recursive header files inclusion detected in ChordGenericNaivePlaneComputer.h
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>
360 template <
typename Vector3D>
369 template <
typename Vector3D>
432 template <
typename TSpace,
typename TInputPo
int,
typename TInternalScalar>
442#include "DGtal/geometry/surfaces/ChordGenericNaivePlaneComputer.ih"
449#undef ChordGenericNaivePlaneComputer_RECURSES
Aim: A class that recognizes pieces of digital planes of given axis width. When the width is 1,...
void getNormal(Vector3D &normal) const
~ChordGenericNaivePlaneComputer()
ConstIterator end() const
TInternalScalar InternalScalar
std::vector< Dimension > _axesToErase
Primitive primitive() const
void getBounds(double &min, double &max) const
bool isExtendable(TInputIterator it, TInputIterator itE) const
void getUnitNormal(Vector3D &normal) const
std::set< InputPoint > InputPointSet
bool operator()(const Point &p) const
InputPointSet::const_pointer const_pointer
InputPointSet::const_iterator ConstIterator
bool isExtendable(const InputPoint &p) const
ChordNaivePlaneComputer< Space, InputPoint, InternalScalar > ChordComputer
InputPointSet::size_type size_type
const InputPoint & maximalPoint() const
InputPointSet::const_reference const_reference
ChordGenericNaivePlaneComputer(const ChordGenericNaivePlaneComputer &other)
InputPointSet::const_iterator const_iterator
ConstIterator begin() const
BOOST_STATIC_ASSERT((TInputPoint::dimension==3))
BOOST_STATIC_ASSERT((TSpace::dimension==3))
void init(InternalScalar widthNumerator=NumberTraits< InternalScalar >::ONE, InternalScalar widthDenominator=NumberTraits< InternalScalar >::ONE)
bool extend(const InputPoint &p)
ChordGenericNaivePlaneComputer & operator=(const ChordGenericNaivePlaneComputer &other)
void selfDisplay(std::ostream &out) const
InputPointSet::difference_type difference_type
bool extendAsIs(const InputPoint &p)
InputPointSet::iterator Iterator
std::vector< Dimension >::iterator AxisIterator
InternalScalar InternalVector[3]
const InputPoint & minimalPoint() const
std::vector< Dimension > myAxes
BOOST_CONCEPT_ASSERT((concepts::CSignedNumber< TInternalScalar >))
ChordComputer::Primitive Primitive
InputVector::Component Component
bool extend(TInputIterator it, TInputIterator itE)
InputPoint::Coordinate Coordinate
ChordComputer myComputers[3]
ChordGenericNaivePlaneComputer()
InputPointSet::value_type value_type
BOOST_CONCEPT_ASSERT((concepts::CSpace< TSpace >))
std::vector< Dimension >::const_iterator AxisConstIterator
InputPointSet::size_type Size
Aim: A parallel strip in the space is the intersection of two parallel half-planes such that each hal...
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ClosedIntegerHalfPlane< TSpace > &object)
DGtal::uint32_t Dimension
Aim: The traits class for all models of Cinteger.
Aim: Concept checking for Signed Numbers. Models of this concept should be listed in NumberTraits cla...
Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.