7 const DoubleContourSPtr cont;
12 cv::Mat cart_c, rad_c, angle_c;
14 std::vector<cv::Mat> cartD_c;
16 cv::Mat angleD_c, radD_c;
17 double maxRadD, minRadD;
20 double mostClockwisePt[2], leastClockwisePt[2];
22 double radMin, radMax, radAverage;
24 void radMinMaxAverage ();
25 void angleMinMaxLength ();
26 void calcDerivedData ();
28 ContourData (
const DoubleContourSPtr cont_,
const cv::Mat &cart_c_);
30 const DoubleContourSPtr getContour()
const {
return cont; }
31 void setEnabled () { bDisabled =
false; }
32 void setDisabled () { bDisabled =
true; }
33 bool isDisabled ()
const {
return bDisabled ==
true; }
34 bool isEnabled ()
const {
return bDisabled ==
false; }
35 bool isPassZero ()
const {
return bPassZero; }
36 double getMostClockwiseAng ()
const {
return mostClockwisePt[0]; }
37 double getLeastClockwiseAng ()
const {
return leastClockwisePt[0]; }
38 double getMostClockwiseRad ()
const {
return mostClockwisePt[1]; }
39 double getLeastClockwiseRad ()
const {
return leastClockwisePt[1]; }
40 double getArcLen ()
const {
return arcLen; }
41 double getRadAverage ()
const {
return radAverage; }
42 void getCartC (cv::Mat &mat)
const { mat = cart_c; }
43 void getCartD (std::vector<cv::Mat>& derivatives)
const { derivatives = cartD_c; }
44 void getRadC (cv::Mat &mat)
const { mat = rad_c; }
45 void getRadD (cv::Mat &mat)
const { mat = radD_c; }
46 void getAngleC (cv::Mat &mat)
const { mat = angle_c; }
47 void getAngleD (cv::Mat &mat)
const { mat = angleD_c; }
51 bool lessCWThan (
ContourData &other)
const {
return leastClockwisePt[0] > other.leastClockwisePt[0]; }
52 bool inArcRange (
double arcVal)
const;
53 bool overlaps (
const ContourData &other) {
return inArcRange (other.leastClockwisePt[0]) || inArcRange (other.mostClockwisePt[0]) || other.inArcRange (leastClockwisePt[0]) || other.inArcRange (mostClockwisePt[0]); }
64 void numDerivative ( std::vector<cv::Mat>& derivative,
const cv::Mat X,
const cv::Mat Y,
const bool polarFlag);
67 bool compareMostClockwise (ContourDataSPtr contSysA, ContourDataSPtr contSysB);
68 bool compareLeastClockwise (ContourDataSPtr contSysA, ContourDataSPtr contSysB);
69 bool compareMinArcLength (ContourDataSPtr contSysA, ContourDataSPtr contSysB) ;
70 bool compareMaxArcLength (ContourDataSPtr contSysA, ContourDataSPtr contSysB) ;
71 bool compareMinRadAverage (ContourDataSPtr contSysA, ContourDataSPtr contSysB) ;
72 bool compareMaxRadAverage (ContourDataSPtr contSysA, ContourDataSPtr contSysB);
bool moreCWThan(ContourData &other) const
Definition: ContourData.h:50
Definition: ContourData.h:3