7 #include <QtTest/QtTest>
22 void TestTransformation::cleanupTestCase ()
27 double TestTransformation::differenceMagnitude (
const QPointF &vector1,
28 const QPointF &vector2)
const
30 QPointF difference = vector1 - vector2;
31 return qSqrt (difference.x() * difference.x() +
32 difference.y() * difference.y());
34 void TestTransformation::initTestCase ()
41 const bool NO_RESET =
false;
67 void TestTransformation::initTransformation (
const QPointF &s0,
76 QTransform matrixScreen (s0.x(), s1.x(), s2.x(),
77 s0.y(), s1.y(), s2.y(),
79 QTransform matrixGraph (g0.x(), g1.x(), g2.x(),
80 g0.y(), g1.y(), g2.y(),
85 t.setModelCoords (modelCoords,
88 t.updateTransformFromMatrices(matrixScreen,
133 void TestTransformation::testCartesianLinearLinear ()
135 QPointF s0 (10, 1000);
136 QPointF s1 (1000, 1000);
142 initTransformation (s0,
148 modelCoordsDefault(),
149 modelGeneralDefault());
151 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
152 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
153 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
154 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
155 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
156 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));
159 void TestTransformation::testCartesianLinearLog ()
161 QPointF s0 (10, 1000);
162 QPointF s1 (1000, 1000);
170 initTransformation (s0,
176 modelCoordsDefault(),
177 modelGeneralDefault());
179 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
180 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
181 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
182 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
183 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
184 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));
187 void TestTransformation::testCartesianLogLinear ()
189 QPointF s0 (10, 1000);
190 QPointF s1 (1000, 1000);
198 initTransformation (s0,
204 modelCoordsDefault(),
205 modelGeneralDefault());
207 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
208 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
209 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
210 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
211 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
212 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));
215 void TestTransformation::testCartesianLogLog ()
217 QPointF s0 (10, 1000);
218 QPointF s1 (1000, 1000);
227 initTransformation (s0,
233 modelCoordsDefault(),
234 modelGeneralDefault());
236 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
237 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
238 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
239 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
240 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
241 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));
244 void TestTransformation::testPolarLinear ()
246 QPointF s0 (500, 1000);
247 QPointF s1 (1000, 500);
248 QPointF s2 (500, 500);
249 QPointF g0 (-90, 100);
255 initTransformation (s0,
261 modelCoordsDefault(),
262 modelGeneralDefault());
264 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
265 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
266 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
267 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
268 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
269 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));
272 void TestTransformation::testPolarLogOffset1 ()
274 QPointF s0 (500, 1000);
275 QPointF s1 (1000, 500);
276 QPointF s2 (500, 500);
277 QPointF g0 (-90, 100);
285 initTransformation (s0,
291 modelCoordsDefault(),
292 modelGeneralDefault());
294 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
295 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
296 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
297 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
298 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
299 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));
302 void TestTransformation::testPolarLogOffset10 ()
304 QPointF s0 (500, 1000);
305 QPointF s1 (1000, 500);
306 QPointF s2 (500, 500);
307 QPointF g0 (-90, 100);
315 initTransformation (s0,
321 modelCoordsDefault(),
322 modelGeneralDefault());
324 QVERIFY ((differenceMagnitude (s0, m_s0Transformed) <
EPSILON));
325 QVERIFY ((differenceMagnitude (s1, m_s1Transformed) <
EPSILON));
326 QVERIFY ((differenceMagnitude (s2, m_s2Transformed) <
EPSILON));
327 QVERIFY ((differenceMagnitude (g0, m_g0Transformed) <
EPSILON));
328 QVERIFY ((differenceMagnitude (g1, m_g1Transformed) <
EPSILON));
329 QVERIFY ((differenceMagnitude (g2, m_g2Transformed) <
EPSILON));