33 #if defined(Ellipse2D_RECURSES)
34 #error Recursive header files inclusion detected in Ellipse2D.h
35 #else // defined(Ellipse2D_RECURSES)
37 #define Ellipse2D_RECURSES
39 #if !defined Ellipse2D_h
46 #include "DGtal/base/Common.h"
47 #include "DGtal/shapes/parametric/StarShaped2D.h"
63 template <
typename TSpace>
87 Ellipse2D(
const double x0,
const double y0,
88 const double a0,
const double a1,
const double theta );
98 const double a0,
const double a1,
const double theta );
236 template <
typename T>
240 return std::abs(x - y) <= std::numeric_limits<T>::epsilon();
252 template <
typename T>
254 operator<< ( std::ostream & out,
const Ellipse2D<T> &
object );
261 #include "DGtal/shapes/parametric/Ellipse2D.ih"
266 #endif // !defined Ellipse2D_h
268 #undef Ellipse2D_RECURSES
269 #endif // else defined(Ellipse2D_RECURSES)
RealVector xpp(const double t) const
void selfDisplay(std::ostream &out) const
RealVector xp(const double t) const
RealPoint x(const double t) const
RealPoint getLowerBound() const
bool isAlmostEqual(T x, T y) const
double parameter(const RealPoint &p) const
Ellipse2D & operator=(const Ellipse2D &other)=delete
std::ostream & operator<<(std::ostream &out, const ATu0v1< TKSpace, TLinearAlgebra > &object)
DGtal is the top-level namespace which contains all DGtal functions and types.
Space::RealVector RealVector
RealPoint getUpperBound() const
Space::RealPoint RealPoint
Aim: Model of the concept StarShaped represents any ellipse in the plane.
PointVector< dim, double > RealPoint
Aim: Implements basic operations that will be used in Point and Vector classes.
void moveTo(const RealPoint &newCenter)