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,
bool stable() const
Get method for stable flag.
void setModelGridRemoval(const DocumentModelGridRemoval &modelGridRemoval)
Set method for DocumentModelGridRemoval.
Context class for transformation state machine.
DocumentModelGridRemoval modelGridRemoval() const
Get method for DocumentModelGridRemoval.
int checkerSeconds() const
Get method for checker lifetime in seconds.
CallbackSearchReturn callback(const QString &curveName, const Point &point)
Callback method.
DocumentAxesPointsRequired documentAxesPointsRequired() const
Get method for DocumentAxesPointsRequired.
DocumentModelColorFilter modelColorFilter() const
Get method for DocumentModelColorFilter.
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.
Box shape that is drawn through the three axis points, to temporarily (usually) or permanently (rarel...
bool stable() const
Get method for stable flag.
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...
Points points() const
Return the collected points as a polygon, in screen coordinates.
DocumentModelGridDisplay modelGridDisplay() const
Get method for DocumentModelGridDisplay.
int pointRadius(const QString &curveName) const
Get method for curve point radius.
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.
Classify the grid pattern in an original image.
void setVisible(bool visible)
Show/hide this axes checker.
QPixmap pixmap() const
Return the image that is being digitized.
CurveStyles modelCurveStyles() const
Get method for CurveStyles.
void initializeGridDisplay(const Transformation &transformation)
Initialize grid display. This is called immediately after the transformation has been defined for the...
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. ...
DocumentModelCoords modelCoords() const
Get method for DocumentModelCoords.
DocumentModelAxesChecker modelAxesChecker() const
Get method for DocumentModelAxesChecker.