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;
54 NO_REGRESSION_OPEN_FILE,
60 NO_EXTRACT_IMAGE_ONLY,
61 NO_EXTRACT_IMAGE_EXTENSION,
62 NO_LOAD_STARTUP_FILES,
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));
void setCoordUnitsTime(CoordUnitsTime coordUnits)
Set method for time units.
Model for DlgSettingsGeneral and CmdSettingsGeneral.
void setCoordUnitsDate(CoordUnitsDate coordUnits)
Set method for date units.
void setCursorSize(int cursorSize)
Set method for effective cursor size.
void setCoordUnitsY(CoordUnitsNonPolarTheta coordUnits)
Set method for y units.
const bool NO_GNUPLOT_LOG_FILES
void setCoordUnitsX(CoordUnitsNonPolarTheta coordUnits)
Set method for x units.
void setCoordScaleYRadius(CoordScale coordScale)
Set method for linear/log scale on y/radius.
const bool NO_REGRESSION_IMPORT
const QString NO_EXTRACT_IMAGE_EXTENSION
void initializeLogging(const QString &name, const QString &filename, bool isDebug)
const QStringList NO_LOAD_STARTUP_FILES
Model for DlgSettingsMainWindow.
const QString NO_REGRESSION_OPEN_FILE
void setCoordUnitsTheta(CoordUnitsPolarTheta coordUnits)
Set method for theta units.
const bool NO_EXPORT_ONLY
Model for DlgSettingsCoords and CmdSettingsCoords.
void setOriginRadius(double originRadius)
Set method for origin radius in polar mode.
const QStringList NO_COMMAND_LINE
void setCoordUnitsRadius(CoordUnitsNonPolarTheta coordUnits)
Set method for radius units.
const bool NO_DROP_REGRESSION
const QString NO_ERROR_REPORT_LOG_FILE
void setExtraPrecision(int extraPrecision)
Set method for extra digits of precision.
Main window consisting of menu, graphics scene, status bar and optional toolbars as a Single Document...
void setCoordScaleXTheta(CoordScale coordScale)
Set method for linear/log scale on x/theta.
const bool NO_EXTRACT_IMAGE_ONLY
void setCoordsType(CoordsType coordsType)
Set method for coordinates type.