Engauge Digitizer  2
GridRemoval.h
1 /******************************************************************************************************
2  * (C) 2014 markummitchell@github.com. This file is part of Engauge Digitizer, which is released *
3  * under GNU General Public License version 2 (GPLv2) or (at your option) any later version. See file *
4  * LICENSE or go to gnu.org/licenses for details. Distribution requires prior written permission. *
5  ******************************************************************************************************/
6 
7 #ifndef GRID_REMOVAL_H
8 #define GRID_REMOVAL_H
9 
10 #include <QPixmap>
11 #include <QPointF>
12 
14 class GridHealer;
15 class QImage;
16 class Transformation;
17 
20 {
21  public:
23  GridRemoval();
24 
26  QPixmap remove (const Transformation &transformation,
27  const DocumentModelGridRemoval &modelGridRemoval,
28  const QImage &imageBefore);
29 
30 private:
31 
33  QPointF clipX (const QPointF &posUnprojected,
34  double xBoundary,
35  const QPointF &posOther) const;
36 
38  QPointF clipY (const QPointF &posUnprojected,
39  double yBoundary,
40  const QPointF &posOther) const;
41 
42  void removeLine (const QPointF &pos1,
43  const QPointF &pos2,
44  QImage &image,
45  GridHealer &gridHealer);
46 };
47 
48 #endif // GRID_REMOVAL_H
Class that &#39;heals&#39; the curves after grid lines have been removed.
Definition: GridHealer.h:37
Affine transformation between screen and graph coordinates, based on digitized axis points...
Model for DlgSettingsGridRemoval and CmdSettingsGridRemoval. The settings are unstable until the user...
GridRemoval()
Single constructor.
Definition: GridRemoval.cpp:19
Strategy class for grid removal.
Definition: GridRemoval.h:19