12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- #pragma once
-
- #include <opencv2/opencv.hpp>
-
- using namespace cv;
- using namespace std;
-
-
- class LFRPoint
- {
- private:
- /* data */
- public:
- double x, y;
- LFRPoint(/* args */);
- LFRPoint(double x, double y);
- ~LFRPoint();
-
- LFRPoint operator-(const LFRPoint& pt){return LFRPoint(x-pt.x, y-pt.y);}
- LFRPoint operator+(const LFRPoint& pt){return LFRPoint(x+pt.x, y+pt.y);}
- };
-
- class LFRVector : public LFRPoint
- {
- private:
- /* data */
- public:
- LFRVector(/* args */);
- LFRVector(double x, double y);
- LFRVector(const LFRPoint& pt);
- ~LFRVector();
-
- };
-
- class LFRLine
- {
- private:
- /* data */
-
- public:
- LFRPoint start;
- LFRVector dir;
-
- LFRLine(/* args */);
- LFRLine(LFRPoint start, LFRVector dir);
- LFRLine(LFRPoint start, LFRPoint end);
- ~LFRLine();
- };
-
- class Calcs{
- private:
- public:
- static int calcAngle(int deltaX, int deltaY);
- };
-
- class FrameData
- {
- public:
- std::vector<std::vector<cv::Point>> contours;
- std::vector<cv::Rect> boundingBoxes;
- std::vector<cv::Point> leftEdges;
- std::vector<cv::Point> middlePoints;
- int angle; //Angle of the contour the robot has to follow to
- int index; //Index of the contour the robot has to follow to
-
- FrameData(): contours(), boundingBoxes(), leftEdges(), middlePoints() {}
- };
|