33 #if defined(StarShaped2D_RECURSES)
34 #error Recursive header files inclusion detected in StarShaped2D.h
37 #define StarShaped2D_RECURSES
39 #if !defined StarShaped2D_h
41 #define StarShaped2D_h
47 #include "DGtal/base/Common.h"
48 #include "DGtal/kernel/NumberTraits.h"
73 template <
typename TSpace>
219 double arclength(
const double t1,
double t2,
const unsigned int nb )
const;
265 template <
typename T>
269 return std::abs(x - y) <= std::numeric_limits<T>::epsilon();
281 template <
typename T>
290 #include "DGtal/shapes/parametric/StarShaped2D.ih"
297 #undef StarShaped2D_RECURSES
RealPoint closestPointWithWitnesses(const RealPoint &p, const RealPoint &left, const RealPoint &right, const int step) const
RealPoint tangent(const double t) const
virtual RealPoint interiorPoint() const
RealPoint findIntersection(const RealPoint &inner, const RealPoint &outer, const double epsilon) const
virtual ~StarShaped2D()=default
virtual void moveTo(const RealPoint &newCenter)=0
Space::RealPoint RealPoint
Orientation orientation(const RealPoint &p) const
RealPoint normal(const double t) const
StarShaped2D(const StarShaped2D &other)=delete
bool isAlmostEqual(T x, T y) const
virtual RealPoint getUpperBound() const =0
virtual double parameter(const RealPoint &p) const =0
void selfDisplay(std::ostream &out) const
virtual RealPoint x(const double t) const =0
virtual RealPoint xpp(const double t) const =0
StarShaped2D & operator=(const StarShaped2D &other)=delete
virtual RealPoint getLowerBound() const =0
virtual RealPoint center() const =0
double arclength(const double t1, double t2, const unsigned int nb) const
virtual RealPoint xp(const double t) const =0
double curvature(const double t) const
DGtal is the top-level namespace which contains all DGtal functions and types.
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
PointVector< 3, double > RealPoint