Engauge Digitizer 2
Loading...
Searching...
No Matches
ExportXThetaValuesMergedFunctions.h
Go to the documentation of this file.
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 EXPORT_X_THETA_VALUES_MERGED_FUNCTIONS_H
8#define EXPORT_X_THETA_VALUES_MERGED_FUNCTIONS_H
9
11#include "ExportValuesXOrY.h"
12#include "MainWindowModel.h"
13#include "Transformation.h"
14#include "ValuesVectorXOrY.h"
15
16class Point;
17class Transformation;
18
21{
22public:
25 const MainWindowModel &modelMainWindow,
26 const ValuesVectorXOrY &xThetaValuesRaw,
27 const Transformation &transformation);
28
30 ExportValuesXOrY xThetaValues (bool &isOverrun) const;
31
32private:
34
35 bool breakForPointOverrun (unsigned int curveSize,
36 bool &isOverrun) const;
37 void firstSimplestNumberLinear (double &xThetaFirstSimplestNumber,
38 double &xThetaMin,
39 double &xThetaMax) const;
40 void firstSimplestNumberLog (double &xThetaFirstSimplestNumber,
41 double &xThetaMin,
42 double &xThetaMax) const;
43 ExportValuesXOrY periodicLinear(bool &isOverrun) const;
44 ExportValuesXOrY periodicLinearGraph (double xThetaFirstSimplestNumber,
45 double xThetaMin,
46 double xThetaMax,
47 bool &isOverrun) const;
48 ExportValuesXOrY periodicLinearScreen (double xThetaMin,
49 double xThetaMax,
50 bool &isOverrun) const;
51 ExportValuesXOrY periodicLog(bool &isOverrun) const;
52 ExportValuesXOrY periodicLogGraph (double xThetaFirstSimplestNumber,
53 double xThetaMin,
54 double xThetaMax,
55 bool &isOverrun) const;
56 ExportValuesXOrY periodicLogScreen (double xThetaMin,
57 double xThetaMax,
58 bool &isOverrun) const;
59
60 const DocumentModelExportFormat m_modelExport;
61 const MainWindowModel m_modelMainWindow;
62 const ValuesVectorXOrY m_xThetaValuesRaw;
63 const Transformation m_transformation;
64};
65
66#endif // EXPORT_X_THETA_VALUES_MERGED_FUNCTIONS_H
QList< double > ExportValuesXOrY
QMap< double, bool > ValuesVectorXOrY
Model for DlgSettingsExportFormat and CmdSettingsExportFormat.
ExportXThetaValuesMergedFunctions(const DocumentModelExportFormat &modelExport, const MainWindowModel &modelMainWindow, const ValuesVectorXOrY &xThetaValuesRaw, const Transformation &transformation)
Single constructor.
ExportValuesXOrY xThetaValues(bool &isOverrun) const
Resulting x/theta values for all included functions.
Model for DlgSettingsMainWindow.
Class that represents one digitized point. The screen-to-graph coordinate transformation is always ex...
Definition Point.h:26
Affine transformation between screen and graph coordinates, based on digitized axis points.