Engauge Digitizer  2
ExportXThetaValuesMergedFunctions.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 EXPORT_X_THETA_VALUES_MERGED_FUNCTIONS_H
8 #define EXPORT_X_THETA_VALUES_MERGED_FUNCTIONS_H
9 
10 #include "DocumentModelExportFormat.h"
11 #include "ExportValuesXOrY.h"
12 #include "Transformation.h"
13 #include "ValuesVectorXOrY.h"
14 
15 class Point;
16 class Transformation;
17 
20 {
21 public:
24  const ValuesVectorXOrY &xThetaValuesRaw,
25  const Transformation &transformation);
26 
28  ExportValuesXOrY xThetaValues () const;
29 
30 private:
32 
33  void firstSimplestNumberLinear (double &xThetaFirstSimplestNumber,
34  double &xThetaMin,
35  double &xThetaMax) const;
36  void firstSimplestNumberLog (double &xThetaFirstSimplestNumber,
37  double &xThetaMin,
38  double &xThetaMax) const;
39  ExportValuesXOrY periodicLinear() const;
40  ExportValuesXOrY periodicLinearGraph (double xThetaFirstSimplestNumber,
41  double xThetaMin,
42  double xThetaMax) const;
43  ExportValuesXOrY periodicLinearScreen (double xThetaMin,
44  double xThetaMax) const;
45  ExportValuesXOrY periodicLog() const;
46  ExportValuesXOrY periodicLogGraph (double xThetaFirstSimplestNumber,
47  double xThetaMin,
48  double xThetaMax) const;
49  ExportValuesXOrY periodicLogScreen (double xThetaMin,
50  double xThetaMax) const;
51 
52  const DocumentModelExportFormat m_modelExport;
53  const ValuesVectorXOrY m_xThetaValuesRaw;
54  const Transformation m_transformation;
55 };
56 
57 #endif // EXPORT_X_THETA_VALUES_MERGED_FUNCTIONS_H
Creates the set of merged x/theta values for exporting functions, using interpolation.
ExportValuesXOrY xThetaValues() const
Resulting x/theta values for all included functions.
Model for DlgSettingsExportFormat and CmdSettingsExportFormat.
Class that represents one digitized point. The screen-to-graph coordinate transformation is always ex...
Definition: Point.h:23
Affine transformation between screen and graph coordinates, based on digitized axis points...