7 #include "CallbackAxesCheckerFromAxesPoints.h" 9 #include "CmdMediator.h" 11 #include "EnumsToQt.h" 12 #include "FilterImage.h" 13 #include "GridClassifier.h" 15 #include <QGraphicsScene> 18 #include "Transformation.h" 19 #include "TransformationStateContext.h" 20 #include "TransformationStateDefined.h" 22 const int SECONDS_TO_MILLISECONDS = 1000.0;
25 QGraphicsScene &scene) :
27 m_axesChecker (new
Checker (scene)),
30 m_timer->setSingleShot (
true);
31 connect (m_timer, SIGNAL (timeout()),
this, SLOT (slotTimeout()));
36 const QString &selectedGraphCurve)
38 LOG4CPP_INFO_S ((*mainCat)) <<
"TransformationStateDefined::begin";
43 initializeModelGridDisplay (cmdMediator,
51 initializeModelGridRemoval (cmdMediator,
64 LOG4CPP_INFO_S ((*mainCat)) <<
"TransformationStateDefined::end";
69 void TransformationStateDefined::initializeModelGridDisplay (
CmdMediator &cmdMediator,
75 void TransformationStateDefined::initializeModelGridRemoval (
CmdMediator &cmdMediator,
77 const QString &selectedGraphCurve)
79 LOG4CPP_INFO_S ((*mainCat)) <<
"TransformationStateDefined::initializeModelGridRemoval";
91 double startX, startY, stepX, stepY;
111 void TransformationStateDefined::slotTimeout()
113 LOG4CPP_INFO_S ((*mainCat)) <<
"TransformationStateDefined::slotTimeout";
120 LOG4CPP_INFO_S ((*mainCat)) <<
"TransformationStateDefined::startTimer";
124 if (modelAxesChecker.
checkerMode () == CHECKER_MODE_N_SECONDS) {
127 int milliseconds = modelAxesChecker.
checkerSeconds() * SECONDS_TO_MILLISECONDS;
128 m_timer->start (milliseconds);
136 Functor2wRet<const QString &, const Point&, CallbackSearchReturn> ftorWithCallback = functor_ret (ftor,
DocumentAxesPointsRequired documentAxesPointsRequired() const
Get method for DocumentAxesPointsRequired.
DocumentModelColorFilter modelColorFilter() const
Get method for DocumentModelColorFilter.
void setModelGridRemoval(const DocumentModelGridRemoval &modelGridRemoval)
Set method for DocumentModelGridRemoval.
int checkerSeconds() const
Get method for checker lifetime in seconds.
Context class for transformation state machine.
CallbackSearchReturn callback(const QString &curveName, const Point &point)
Callback method.
int pointRadius(const QString &curveName) const
Get method for curve point radius.
DocumentModelCoords modelCoords() const
Get method for DocumentModelCoords.
QPixmap pixmap() const
Return the image that is being digitized.
bool stable() const
Get method for stable flag.
Box shape that is drawn through the three axis points, to temporarily (usually) or permanently (rarel...
CheckerMode checkerMode() const
Get method for checker lifetime mode.
void prepareForDisplay(const QPolygonF &polygon, int pointRadius, const DocumentModelAxesChecker &modelAxesChecker, const DocumentModelCoords &modelCoords, DocumentAxesPointsRequired documentAxesPointsRequired)
Create the polygon from current information, including pixel coordinates, just prior to display...
CurveStyles modelCurveStyles() const
Get method for CurveStyles.
DocumentModelAxesChecker modelAxesChecker() const
Get method for DocumentModelAxesChecker.
QPixmap filter(const QImage &imageUnfiltered, const Transformation &transformation, const QString &curveSelected, const DocumentModelColorFilter &modelColorFilter, const DocumentModelGridRemoval &modelGridRemoval) const
Filter original unfiltered image into filtered pixmap.
Callback for positioning the axes indicator according to the axes points.
Filters an image using a combination of color filtering and grid removal.
Model for DlgSettingsAxesChecker and CmdSettingsAxesChecker.
bool stable() const
Get method for stable flag.
Classify the grid pattern in an original image.
void setVisible(bool visible)
Show/hide this axes checker.
void initializeGridDisplay(const Transformation &transformation)
Initialize grid display. This is called immediately after the transformation has been defined for the...
DocumentModelGridDisplay modelGridDisplay() const
Get method for DocumentModelGridDisplay.
Points points() const
Return the collected points as a polygon, in screen coordinates.
Model for DlgSettingsGridRemoval and CmdSettingsGridRemoval. The settings are unstable until the user...
void classify(bool isGnuplot, const QPixmap &originalPixmap, const Transformation &transformation, int &countX, double &startX, double &stepX, int &countY, double &startY, double &stepY)
Classify the specified image, and return the most probably x and y grid settings. ...
DocumentModelGridRemoval modelGridRemoval() const
Get method for DocumentModelGridRemoval.