13 #ifndef mitkPlanarDoubleEllipse_h
14 #define mitkPlanarDoubleEllipse_h
31 itkFactorylessNewMacro(Self);
45 static const unsigned int CP_CENTER = 0;
46 static const unsigned int CP_OUTER_MAJOR_AXIS = 1;
47 static const unsigned int CP_OUTER_MINOR_AXIS = 2;
48 static const unsigned int CP_INNER_MAJOR_AXIS = 3;
65 unsigned int m_NumberOfSegments;
66 bool m_ConstrainCircle;
67 bool m_ConstrainThickness;
68 double m_FixedRadius = 0;
69 double m_FixedThickness = 0;
70 bool m_SizeIsFixed =
false;
Planar representing a double ellipse. The double ellipse is either represented by 4 control points (c...
void EvaluateFeaturesInternal() override
Calculates quantities of all features of this planar figure. Must be implemented in sub-classes.
mitkNewMacro2Param(PlanarDoubleEllipse, double, double) static Pointer New()
unsigned int GetMaximumNumberOfControlPoints() const override
Returns the maximum number of control points allowed for this figure (e.g. 3 for triangles).
bool Equals(const mitk::PlanarFigure &other) const override
Compare two PlanarFigure objects Note: all subclasses have to implement the method on their own.
void GeneratePolyLine() override
Generates the poly-line representation of the planar figure. Must be implemented in sub-classes.
PlanarDoubleEllipse(double fixedRadius, double fixedThickness)
void SetNumberOfSegments(unsigned int numSegments)
unsigned int GetNumberOfSegments() const
unsigned int GetMinimumNumberOfControlPoints() const override
Returns the minimum number of control points needed to represent this figure.
mitk::Point2D ApplyControlPointConstraints(unsigned int index, const Point2D &point) override
Allow sub-classes to apply constraints on control points.
bool SetControlPoint(unsigned int index, const Point2D &point, bool createIfDoesNotExist=true) override
const unsigned int FEATURE_ID_MINOR_AXIS
void GenerateHelperPolyLine(double, unsigned int) override
Generates the poly-lines that should be drawn the same size regardless of zoom. Must be implemented i...
const unsigned int FEATURE_ID_MAJOR_AXIS
mitkClassMacro(PlanarDoubleEllipse, PlanarFigure)
const unsigned int FEATURE_ID_THICKNESS
Find image slices visible on a given plane.