Engauge Digitizer  2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
GeometryStrategyContext.h
Go to the documentation of this file.
1 /******************************************************************************************************
2  * (C) 2016 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 GEOMETRY_STRATEGY_CONTEXT_H
8 #define GEOMETRY_STRATEGY_CONTEXT_H
9 
10 #include "CurveConnectAs.h"
11 #include "MainWindowModel.h"
12 #include "Points.h"
13 #include <QVector>
14 
18 class Transformation;
19 
22 {
23 public:
26  virtual ~GeometryStrategyContext ();
27 
29  void calculateGeometry (const Points &points,
30  const DocumentModelCoords &modelCoords,
31  const DocumentModelGeneral &modelGeneral,
32  const MainWindowModel &modelMainWindow,
33  const Transformation &transformation,
34  CurveConnectAs connectAs,
35  QString &funcArea,
36  QString &polyArea,
37  QVector<QString> &x,
38  QVector<QString> &y,
39  QVector<bool> &isPotentialExportAmbiguity,
40  QVector<QString> &distanceGraphForward,
41  QVector<QString> &distancePercentForward,
42  QVector<QString> &distanceGraphBackward,
43  QVector<QString> &distancePercentBackward) const;
44 
45 private:
46 
47  QVector<GeometryStrategyAbstractBase*> m_strategies;
48 
49 };
50 
51 #endif // GEOMETRY_STRATEGY_CONTEXT_H
Model for DlgSettingsGeneral and CmdSettingsGeneral.
void calculateGeometry(const Points &points, const DocumentModelCoords &modelCoords, const DocumentModelGeneral &modelGeneral, const MainWindowModel &modelMainWindow, const Transformation &transformation, CurveConnectAs connectAs, QString &funcArea, QString &polyArea, QVector< QString > &x, QVector< QString > &y, QVector< bool > &isPotentialExportAmbiguity, QVector< QString > &distanceGraphForward, QVector< QString > &distancePercentForward, QVector< QString > &distanceGraphBackward, QVector< QString > &distancePercentBackward) const
Calculate geometry parameters.
Base class for all geometry strategies.
GeometryStrategyContext()
Single constructor.
Affine transformation between screen and graph coordinates, based on digitized axis points...
Class for that manages geometry strategies.
Model for DlgSettingsMainWindow.
Model for DlgSettingsCoords and CmdSettingsCoords.
CurveConnectAs
QList< Point > Points
Definition: Points.h:13