2626#include < opencv2/opencv.hpp>
2727#include < QJsonObject>
2828void fillCircle (cv::Mat &m, double cx, double cy, double rad, void *color);
29- class CircleOutline : public boundary
29+ class CircleOutline final : public boundary
3030{
3131 public:
3232 CircleOutline ();
@@ -35,7 +35,7 @@ class CircleOutline: public boundary
3535 CircleOutline (const QJsonObject &obj);
3636 void toJson (QJsonObject &obj);
3737
38- virtual ~CircleOutline ();
38+ ~CircleOutline ();
3939 void draw (QPainter& painter, double scale, double scale2 = -1 .);
4040 bool isInside (QPointF& p , int offset = 0 );
4141 bool isInside (double x, double y, int offset=0 );
@@ -48,17 +48,15 @@ class CircleOutline: public boundary
4848 double m_radius;
4949 gPlus m_p1;
5050 gPlus m_p2;
51- protected:
52-
53- private:
5451};
5552
56- class ellipseOutline : public boundary
53+ class ellipseOutline final : public boundary
5754{
5855public:
5956 ellipseOutline ();
6057 ellipseOutline (QPointF center, double minorAxis, double majorAxis);
6158 ellipseOutline (QPointF left, QPointF right, double ecc);
59+ void draw (QPainter& painter, double scale, double scale2 = -1 .);
6260 bool isInside (QPointF& p , int offset = 0 );
6361 void enlarge (int del);
6462 void translate (QPointF del);
@@ -76,11 +74,12 @@ class ellipseOutline: public boundary
7674 gPlus m_p2;
7775};
7876
79- class rectangleOutline : public boundary
77+ class rectangleOutline final : public boundary
8078{
8179public:
8280 rectangleOutline ();
8381 rectangleOutline (QPointF upperLeft, QPointF lowerRight);
82+ void draw (QPainter& painter, double scale, double scale2 = -1 .);
8483 bool isInside (QPointF& p , int offset = 0 );
8584 void enlarge (int del);
8685 void translate (QPointF del);
0 commit comments