comparison trajectorymanagement/test/PointOperationsTest.cpp @ 1159:e1e7acef8eab

moved trajectory management library into Traffic Intelligence
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Mon, 22 Feb 2021 22:09:35 -0500
parents
children
comparison
equal deleted inserted replaced
1158:7eb972942f22 1159:e1e7acef8eab
1 #include "PointOperationsTest.h"
2
3 void PointOperationsTest::testInitPoint(void)
4 {
5 testInitPoint2D(cv::Point_<ushort>(10, 20), 10, 20, 30);
6 testInitPoint2D(cv::Point_<short int>(10, 20), 10, 20, 30);
7 testInitPoint2D(cv::Point_<unsigned int>(10, 20), 10, 20, 30);
8 testInitPoint2D(cv::Point_<int>(10, 20), 10, 20, 30);
9 testInitPoint2D(cv::Point_<float>(10.1, 20.1), 10.1, 20.1, 30.1);
10 testInitPoint2D(cv::Point_<double>(10.1, 20.1), 10.1, 20.1, 30.1);
11
12 testInitPoint3D(cv::Point3_<ushort>(10, 20, 30), 10, 20, 30);
13 testInitPoint3D(cv::Point3_<short int>(10, 20, 30), 10, 20, 30);
14 testInitPoint3D(cv::Point3_<unsigned int>(10, 20, 30), 10, 20, 30);
15 testInitPoint3D(cv::Point3_<int>(10, 20, 30), 10, 20, 30);
16 testInitPoint3D(cv::Point3_<float>(10.1, 20.1, 30.1), 10.1, 20.1, 30.1);
17 testInitPoint3D(cv::Point3_<double>(10.1, 20.1, 30.1), 10.1, 20.1, 30.1);
18
19 testInitPoint2D(cvPoint(10, 20), 10, 20, 30);
20 testInitPoint2D(cvPoint2D32f(10.1, 20.2), 10.1, 20.2, 30.3);
21 testInitPoint3D(cvPoint3D32f(10.1, 20.2, 30.3), 10.1, 20.2, 30.3);
22 testInitPoint2D(cvPoint2D64f(10.1, 20.2), 10.1, 20.2, 30.3);
23 testInitPoint3D(cvPoint3D64f(10.1, 20.2, 30.3), 10.1, 20.2, 30.3);
24 }
25
26 void PointOperationsTest::testNorm(void)
27 {
28 CPPUNIT_ASSERT_EQUAL(norm(cvPoint(10, 20)), norm(cv::Point_<int>(10, 20)));
29 CPPUNIT_ASSERT_EQUAL(norm(cvPoint2D32f(10.1, 20.2)), norm(cv::Point_<float>(10.1, 20.2)));
30 CPPUNIT_ASSERT_EQUAL(norm(cvPoint3D32f(10.1, 20.2, 30.3)), norm(cv::Point3_<float>(10.1, 20.2, 30.3)));
31 CPPUNIT_ASSERT_EQUAL(norm(cvPoint2D64f(10.1, 20.2)), norm(cv::Point_<double>(10.1, 20.2)));
32 CPPUNIT_ASSERT_EQUAL(norm(cvPoint3D64f(10.1, 20.2, 30.3)), norm(cv::Point3_<double>(10.1, 20.2, 30.3)));
33 }
34
35 void PointOperationsTest::testDim(void)
36 {
37 CPPUNIT_ASSERT_EQUAL(dim(cv::Point_<ushort>()), (unsigned int) 2);
38 CPPUNIT_ASSERT_EQUAL(dim(cv::Point_<short int>()), (unsigned int) 2);
39 CPPUNIT_ASSERT_EQUAL(dim(cv::Point_<unsigned int>()), (unsigned int) 2);
40 CPPUNIT_ASSERT_EQUAL(dim(cv::Point_<int>()), (unsigned int) 2);
41 CPPUNIT_ASSERT_EQUAL(dim(cv::Point_<float>()), (unsigned int) 2);
42 CPPUNIT_ASSERT_EQUAL(dim(cv::Point_<double>()), (unsigned int) 2);
43
44 CPPUNIT_ASSERT_EQUAL(dim(cv::Point3_<ushort>()), (unsigned int) 3);
45 CPPUNIT_ASSERT_EQUAL(dim(cv::Point3_<short int>()), (unsigned int) 3);
46 CPPUNIT_ASSERT_EQUAL(dim(cv::Point3_<unsigned int>()), (unsigned int) 3);
47 CPPUNIT_ASSERT_EQUAL(dim(cv::Point3_<int>()), (unsigned int) 3);
48 CPPUNIT_ASSERT_EQUAL(dim(cv::Point3_<float>()), (unsigned int) 3);
49 CPPUNIT_ASSERT_EQUAL(dim(cv::Point3_<double>()), (unsigned int) 3);
50
51 CPPUNIT_ASSERT_EQUAL(dim(CvPoint()), (unsigned int) 2);
52 CPPUNIT_ASSERT_EQUAL(dim(CvPoint2D32f()), (unsigned int) 2);
53 CPPUNIT_ASSERT_EQUAL(dim(CvPoint3D32f()), (unsigned int) 3);
54 CPPUNIT_ASSERT_EQUAL(dim(CvPoint2D64f()), (unsigned int) 2);
55 CPPUNIT_ASSERT_EQUAL(dim(CvPoint3D64f()), (unsigned int) 3);
56 }
57
58 void PointOperationsTest::testMinMax(void)
59 {
60 testMinMax<cv::Point_<ushort>, ushort> (10, 20, 30, 20, 10, 20);
61 testMinMax<cv::Point_<short int>, short int> (10, 20, 30, 20, 10, 20);
62 testMinMax<cv::Point_<unsigned int>, unsigned int> (10, 20, 30, 20, 10, 20);
63 testMinMax<cv::Point_<int>, int> (10, 20, 30, 20, 10, 20);
64 testMinMax<cv::Point_<float>, float> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
65 testMinMax<cv::Point_<double>, double> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
66
67 testMinMax<cv::Point3_<ushort>, ushort> (10, 20, 30, 20, 10, 20);
68 testMinMax<cv::Point3_<short int>, short int> (10, 20, 30, 20, 10, 20);
69 testMinMax<cv::Point3_<unsigned int>, unsigned int> (10, 20, 30, 20, 10, 20);
70 testMinMax<cv::Point3_<int>, int> (10, 20, 30, 20, 10, 20);
71 testMinMax<cv::Point3_<float>, float> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
72 testMinMax<cv::Point3_<double>, double> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
73
74 testMinMax<CvPoint, int> (10, 20, 30, 20, 10, 20);
75 testMinMax<CvPoint2D32f, float> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
76 testMinMax<CvPoint3D32f, float> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
77 testMinMax<CvPoint2D64f, double> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
78 testMinMax<CvPoint3D64f, double> (10.1, 20.2, 30.3, 20.4, 10.5, 20.6);
79 }
80
81 void PointOperationsTest::testOperatorEqNotEq(void)
82 {
83 testOperatorEqNotEq<cv::Point_<ushort>, ushort> (10, 20, 30, 1);
84 testOperatorEqNotEq<cv::Point_<short int>, short int> (10, 20, 30, 1);
85 testOperatorEqNotEq<cv::Point_<unsigned int>, unsigned int> (10, 20, 30, 1);
86 testOperatorEqNotEq<cv::Point_<int>, int> (10, 20, 30, 1);
87 testOperatorEqNotEq<cv::Point_<float>, float> (10.1, 20.2, 30.3, 0.1);
88 testOperatorEqNotEq<cv::Point_<double>, double> (10.1, 20.2, 30.3, 0.1);
89
90 testOperatorEqNotEq<cv::Point3_<ushort>, ushort> (10, 20, 30, 1);
91 testOperatorEqNotEq<cv::Point3_<short int>, short int> (10, 20, 30, 1);
92 testOperatorEqNotEq<cv::Point3_<unsigned int>, unsigned int> (10, 20, 30, 1);
93 testOperatorEqNotEq<cv::Point3_<int>, int> (10, 20, 30, 1);
94 testOperatorEqNotEq<cv::Point3_<float>, float> (10.1, 20.2, 30.3, 0.1);
95 testOperatorEqNotEq<cv::Point3_<double>, double> (10.1, 20.2, 30.3, 0.1);
96
97 testOperatorEqNotEq<CvPoint, int> (10, 20, 30, 1);
98 testOperatorEqNotEq<CvPoint2D32f, float> (10.1, 20.2, 30.3, 0.1);
99 testOperatorEqNotEq<CvPoint3D32f, float> (10.1, 20.2, 30.3, 0.1);
100 testOperatorEqNotEq<CvPoint2D64f, double> (10.1, 20.2, 30.3, 0.1);
101 testOperatorEqNotEq<CvPoint3D64f, double> (10.1, 20.2, 30.3, 0.1);
102 }
103
104 void PointOperationsTest::testOperatorMi1(void)
105 {
106 CPPUNIT_ASSERT_EQUAL(-cvPoint(10, -20), cvPoint(-10.1, 20.2));
107 CPPUNIT_ASSERT_EQUAL(-cvPoint2D32f(10.1, -20.2), cvPoint2D32f(-10.1, 20.2));
108 CPPUNIT_ASSERT_EQUAL(-cvPoint3D32f(10.1, -20.2, 30.3), cvPoint3D32f(-10.1, 20.2, -30.3));
109 CPPUNIT_ASSERT_EQUAL(-cvPoint2D64f(10.1, -20.2), cvPoint2D64f(-10.1, 20.2));
110 CPPUNIT_ASSERT_EQUAL(-cvPoint3D64f(10.1, -20.2, 30.3), cvPoint3D64f(-10.1, 20.2, -30.3));
111 }
112
113 void PointOperationsTest::testOperatorPl(void)
114 {
115 testOperatorPl(cvPoint(10, 20), cvPoint(1, 2), cvPoint(11, 22));
116 testOperatorPl(cvPoint2D32f(10.1, 20.2), cvPoint2D32f(1.1, 2.2), cvPoint2D32f(11.2, 22.4));
117 testOperatorPl(cvPoint3D32f(10.1, 20.2, 30.3), cvPoint3D32f(1.1, 2.2, 3.3), cvPoint3D32f(11.2, 22.4, 33.6));
118 testOperatorPl(cvPoint2D64f(10.1, 20.2), cvPoint2D64f(1.1, 2.2), cvPoint2D64f(11.2, 22.4));
119 testOperatorPl(cvPoint3D64f(10.1, 20.2, 30.3), cvPoint3D64f(1.1, 2.2, 3.3), cvPoint3D64f(11.2, 22.4, 33.6));
120 }
121
122 void PointOperationsTest::testOperatorMi2(void)
123 {
124 testOperatorMi(cvPoint(10, 20), cvPoint(1, 2), cvPoint(11, 22));
125 testOperatorMi(cvPoint2D32f(10.1, 20.2), cvPoint2D32f(1.1, 2.2), cvPoint2D32f(11.2, 22.4));
126 testOperatorMi(cvPoint3D32f(10.1, 20.2, 30.3), cvPoint3D32f(1.1, 2.2, 3.3), cvPoint3D32f(11.2, 22.4, 33.6));
127 testOperatorMi(cvPoint2D64f(10.1, 20.2), cvPoint2D64f(1.1, 2.2), cvPoint2D64f(11.2, 22.4));
128 testOperatorMi(cvPoint3D64f(10.1, 20.2, 30.3), cvPoint3D64f(1.1, 2.2, 3.3), cvPoint3D64f(11.2, 22.4, 33.6));
129 }
130
131 void PointOperationsTest::testOperatorInOut(void)
132 {
133 testOperatorInOut(cv::Point_<ushort>(10, 20), "10 20");
134 testOperatorInOut(cv::Point_<short int>(10, 20), "10 20");
135 testOperatorInOut(cv::Point_<unsigned int>(10, 20), "10 20");
136 testOperatorInOut(cv::Point_<int>(10, 20), "10 20");
137 testOperatorInOut(cv::Point_<float>(10.1, 20.2), "10.1 20.2");
138 testOperatorInOut(cv::Point_<double>(10.1, 20.2), "10.1 20.2");
139
140 testOperatorInOut(cv::Point3_<ushort>(10, 20, 30), "10 20 30");
141 testOperatorInOut(cv::Point3_<short int>(10, 20, 30), "10 20 30");
142 testOperatorInOut(cv::Point3_<unsigned int>(10, 20, 30), "10 20 30");
143 testOperatorInOut(cv::Point3_<int>(10, 20, 30), "10 20 30");
144 testOperatorInOut(cv::Point3_<float>(10.1, 20.2, 30.3), "10.1 20.2 30.3");
145 testOperatorInOut(cv::Point3_<double>(10.1, 20.2, 30.3), "10.1 20.2 30.3");
146
147 testOperatorInOut(cvPoint(10, 20), "10 20");
148 testOperatorInOut(cvPoint2D32f(10.1, 20.2), "10.1 20.2");
149 testOperatorInOut(cvPoint3D32f(10.1, 20.2, 30.3), "10.1 20.2 30.3");
150 testOperatorInOut(cvPoint2D64f(10.1, 20.2), "10.1 20.2");
151 testOperatorInOut(cvPoint3D64f(10.1, 20.2, 30.3), "10.1 20.2 30.3");
152 }