13 #ifndef mitkPlanarBezierCurve_h
14 #define mitkPlanarBezierCurve_h
40 itkFactorylessNewMacro(Self);
113 std::vector<mitk::Point2D> m_DeCasteljauPoints;
114 unsigned int m_NumberOfSegments;
Implementation of PlanarFigure representing a Bezier curve.
void SetNumberOfSegments(unsigned int numSegments)
Sets the number of line segments used to approximate the curve.
void EvaluateFeaturesInternal() override
Calculates quantities of all features of this planar figure. Must be implemented in sub-classes.
void GenerateHelperPolyLine(double, unsigned int) override
Generates the poly-lines that should be drawn the same size regardless of zoom. Must be implemented i...
unsigned int GetMaximumNumberOfControlPoints() const override
Returns the maximum number of control points (32).
int GetControlPointForPolylinePoint(int indexOfPolylinePoint, int polyLineIndex) const override
Returns the control point index that corresponds to a given polyline point.
unsigned int GetMinimumNumberOfControlPoints() const override
Returns the minimum number of control points (2).
const unsigned int FEATURE_ID_LENGTH
Feature identifier for the curve length.
bool Equals(const mitk::PlanarFigure &other) const override
Compares this PlanarBezierCurve with another PlanarFigure for equality.
mitkClassMacro(PlanarBezierCurve, PlanarFigure)
PlanarBezierCurve(const Self &other)
unsigned int GetNumberOfSegments() const
Returns the number of line segments used to approximate the curve.
bool IsHelperToBePainted(unsigned int index) const override
Returns whether the helper polyline at the given index should be painted.
void GeneratePolyLine() override
Generates the poly-line representation of the planar figure. Must be implemented in sub-classes.
Find image slices visible on a given plane.
double ScalarType
Scalar type used throughout MITK for geometric computations.