Engauge Digitizer  2
Public Member Functions | List of all members
FormatCoordsUnits Class Reference

Highest-level wrapper around other Formats classes. More...

#include <FormatCoordsUnits.h>

Collaboration diagram for FormatCoordsUnits:
Collaboration graph

Public Member Functions

 FormatCoordsUnits ()
 Single constructor. More...
 
void formattedToUnformatted (const QString &xThetaFormatted, const QString &yRadiusFormatted, const DocumentModelCoords &modelCoords, const MainWindowModel &mainWindowModel, double &xThetaUnformatted, double &yRadiusUnformatted) const
 Convert formatted string to unformatted numeric value. More...
 
void unformattedToFormatted (double xThetaUnformatted, double yRadiusUnformatted, const DocumentModelCoords &modelCoords, const DocumentModelGeneral &modelGeneral, const MainWindowModel &mainWindowModel, QString &xThetaFormatted, QString &yRadiusFormatted, const Transformation &transformation) const
 Convert unformatted numeric value to formatted string. Transformation is used to determine best resolution. More...
 

Detailed Description

Highest-level wrapper around other Formats classes.

Definition at line 16 of file FormatCoordsUnits.h.

Constructor & Destructor Documentation

◆ FormatCoordsUnits()

FormatCoordsUnits::FormatCoordsUnits ( )

Single constructor.

Definition at line 19 of file FormatCoordsUnits.cpp.

20 {
21  LOG4CPP_DEBUG_S ((*mainCat)) << "FormatCoordsUnits::FormatCoordsUnits";
22 }

Member Function Documentation

◆ formattedToUnformatted()

void FormatCoordsUnits::formattedToUnformatted ( const QString &  xThetaFormatted,
const QString &  yRadiusFormatted,
const DocumentModelCoords modelCoords,
const MainWindowModel mainWindowModel,
double &  xThetaUnformatted,
double &  yRadiusUnformatted 
) const

Convert formatted string to unformatted numeric value.

Definition at line 24 of file FormatCoordsUnits.cpp.

30 {
31  LOG4CPP_DEBUG_S ((*mainCat)) << "FormatCoordsUnits::formattedToUnformatted";
32 
33  FormatCoordsUnitsStrategyNonPolarTheta formatNonPolarTheta;
34  FormatCoordsUnitsStrategyPolarTheta formatPolarTheta;
35 
36  if (modelCoords.coordsType() == COORDS_TYPE_CARTESIAN) {
37 
38  xThetaUnformatted = formatNonPolarTheta.formattedToUnformatted (xThetaFormatted,
39  mainWindowModel.locale(),
40  modelCoords.coordUnitsX(),
41  modelCoords.coordUnitsDate(),
42  modelCoords.coordUnitsTime());
43  yRadiusUnformatted = formatNonPolarTheta.formattedToUnformatted (yRadiusFormatted,
44  mainWindowModel.locale(),
45  modelCoords.coordUnitsY(),
46  modelCoords.coordUnitsDate(),
47  modelCoords.coordUnitsTime());
48 
49  } else {
50 
51  xThetaUnformatted = formatPolarTheta.formattedToUnformatted (xThetaFormatted,
52  mainWindowModel.locale(),
53  modelCoords.coordUnitsTheta());
54  yRadiusUnformatted = formatNonPolarTheta.formattedToUnformatted (yRadiusFormatted,
55  mainWindowModel.locale(),
56  modelCoords.coordUnitsRadius(),
57  modelCoords.coordUnitsDate(),
58  modelCoords.coordUnitsTime());
59 
60  }
61 }

◆ unformattedToFormatted()

void FormatCoordsUnits::unformattedToFormatted ( double  xThetaUnformatted,
double  yRadiusUnformatted,
const DocumentModelCoords modelCoords,
const DocumentModelGeneral modelGeneral,
const MainWindowModel mainWindowModel,
QString &  xThetaFormatted,
QString &  yRadiusFormatted,
const Transformation transformation 
) const

Convert unformatted numeric value to formatted string. Transformation is used to determine best resolution.

Definition at line 63 of file FormatCoordsUnits.cpp.

71 {
72  LOG4CPP_DEBUG_S ((*mainCat)) << "FormatCoordsUnits::unformattedToFormatted";
73 
74  FormatCoordsUnitsStrategyNonPolarTheta formatNonPolarTheta;
75  FormatCoordsUnitsStrategyPolarTheta formatPolarTheta;
76 
77  if (modelCoords.coordsType() == COORDS_TYPE_CARTESIAN) {
78 
79  xThetaFormatted = formatNonPolarTheta.unformattedToFormatted (xThetaUnformatted,
80  mainWindowModel.locale(),
81  modelCoords.coordUnitsX(),
82  modelCoords.coordUnitsDate(),
83  modelCoords.coordUnitsTime(),
84  IS_X_THETA,
85  modelGeneral,
86  transformation,
87  yRadiusUnformatted);
88  yRadiusFormatted = formatNonPolarTheta.unformattedToFormatted (yRadiusUnformatted,
89  mainWindowModel.locale(),
90  modelCoords.coordUnitsY(),
91  modelCoords.coordUnitsDate(),
92  modelCoords.coordUnitsTime(),
94  modelGeneral,
95  transformation,
96  xThetaUnformatted);
97 
98  } else {
99 
100  xThetaFormatted = formatPolarTheta.unformattedToFormatted (xThetaUnformatted,
101  mainWindowModel.locale(),
102  modelCoords.coordUnitsTheta(),
103  modelGeneral,
104  transformation,
105  yRadiusUnformatted);
106  yRadiusFormatted = formatNonPolarTheta.unformattedToFormatted (yRadiusUnformatted,
107  mainWindowModel.locale(),
108  modelCoords.coordUnitsRadius(),
109  modelCoords.coordUnitsDate(),
110  modelCoords.coordUnitsTime(),
112  modelGeneral,
113  transformation,
114  xThetaUnformatted);
115  }
116 }

The documentation for this class was generated from the following files:
FormatCoordsUnitsStrategyPolarTheta::formattedToUnformatted
double formattedToUnformatted(const QString &string, const QLocale &locale, CoordUnitsPolarTheta coordUnits) const
Convert formatted string to simple unformatted number.
Definition: FormatCoordsUnitsStrategyPolarTheta.cpp:18
DocumentModelCoords::coordUnitsY
CoordUnitsNonPolarTheta coordUnitsY() const
Get method for x units.
Definition: DocumentModelCoords.cpp:124
FormatCoordsUnitsStrategyNonPolarTheta::unformattedToFormatted
QString unformattedToFormatted(double valueUnformatted, const QLocale &locale, CoordUnitsNonPolarTheta coordUnits, CoordUnitsDate coordUnitsDate, CoordUnitsTime coordUnitsTime, bool isXTheta, const DocumentModelGeneral &modelGeneral, const Transformation &transformation, double valueUnformattedOther) const
Convert simple unformatted number to formatted string.
Definition: FormatCoordsUnitsStrategyNonPolarTheta.cpp:63
FormatCoordsUnitsStrategyPolarTheta
Format conversions between unformatted and formatted for CoordUnitsStrategyPolarTheta.
Definition: FormatCoordsUnitsStrategyPolarTheta.h:18
IS_X_THETA
const bool IS_X_THETA
Definition: FormatCoordsUnits.cpp:16
DocumentModelCoords::coordUnitsRadius
CoordUnitsNonPolarTheta coordUnitsRadius() const
Get method for radius units.
Definition: DocumentModelCoords.cpp:104
DocumentModelCoords::coordUnitsDate
CoordUnitsDate coordUnitsDate() const
Get method for date format when used.
Definition: DocumentModelCoords.cpp:99
COORDS_TYPE_CARTESIAN
Definition: CoordsType.h:15
FormatCoordsUnitsStrategyNonPolarTheta::formattedToUnformatted
double formattedToUnformatted(const QString &string, const QLocale &locale, CoordUnitsNonPolarTheta coordUnits, CoordUnitsDate coordUnitsDate, CoordUnitsTime coordUnitsTime) const
Convert formatted string to simple unformatted number.
Definition: FormatCoordsUnitsStrategyNonPolarTheta.cpp:20
MainWindowModel::locale
QLocale locale() const
Get method for locale.
Definition: MainWindowModel.cpp:121
DocumentModelCoords::coordUnitsX
CoordUnitsNonPolarTheta coordUnitsX() const
Get method for x units.
Definition: DocumentModelCoords.cpp:119
IS_NOT_X_THETA
const bool IS_NOT_X_THETA
Definition: FormatCoordsUnits.cpp:17
mainCat
log4cpp::Category * mainCat
Definition: Logger.cpp:14
FormatCoordsUnitsStrategyPolarTheta::unformattedToFormatted
QString unformattedToFormatted(double valueUnformatted, const QLocale &locale, CoordUnitsPolarTheta coordUnits, const DocumentModelGeneral &modelGeneral, const Transformation &transformation, double valueUnformattedOther) const
Convert simple unformatted number to formatted string.
Definition: FormatCoordsUnitsStrategyPolarTheta.cpp:53
FormatCoordsUnitsStrategyNonPolarTheta
Format conversions between unformatted and formatted for CoordUnitsNonPolarTheta.
Definition: FormatCoordsUnitsStrategyNonPolarTheta.h:20
LOG4CPP_DEBUG_S
#define LOG4CPP_DEBUG_S(logger)
Definition: convenience.h:20
DocumentModelCoords::coordUnitsTime
CoordUnitsTime coordUnitsTime() const
Get method for time format when used.
Definition: DocumentModelCoords.cpp:114
DocumentModelCoords::coordsType
CoordsType coordsType() const
Get method for coordinates type.
Definition: DocumentModelCoords.cpp:94
DocumentModelCoords::coordUnitsTheta
CoordUnitsPolarTheta coordUnitsTheta() const
Get method for theta unit.
Definition: DocumentModelCoords.cpp:109