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 17 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 }
log4cpp::Category * mainCat
Definition: Logger.cpp:14
#define LOG4CPP_DEBUG_S(logger)
Definition: convenience.h:20

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 }
CoordUnitsNonPolarTheta coordUnitsRadius() const
Get method for radius units.
double formattedToUnformatted(const QString &string, const QLocale &locale, CoordUnitsPolarTheta coordUnits) const
Convert formatted string to simple unformatted number.
CoordUnitsNonPolarTheta coordUnitsY() const
Get method for x units.
double formattedToUnformatted(const QString &string, const QLocale &locale, CoordUnitsNonPolarTheta coordUnits, CoordUnitsDate coordUnitsDate, CoordUnitsTime coordUnitsTime) const
Convert formatted string to simple unformatted number.
CoordUnitsPolarTheta coordUnitsTheta() const
Get method for theta unit.
CoordUnitsTime coordUnitsTime() const
Get method for time format when used.
Format conversions between unformatted and formatted for CoordUnitsNonPolarTheta. ...
CoordUnitsDate coordUnitsDate() const
Get method for date format when used.
QLocale locale() const
Get method for locale.
log4cpp::Category * mainCat
Definition: Logger.cpp:14
CoordsType coordsType() const
Get method for coordinates type.
CoordUnitsNonPolarTheta coordUnitsX() const
Get method for x units.
Format conversions between unformatted and formatted for CoordUnitsStrategyPolarTheta.
#define LOG4CPP_DEBUG_S(logger)
Definition: convenience.h:20

◆ 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 }
CoordUnitsNonPolarTheta coordUnitsRadius() const
Get method for radius units.
CoordUnitsNonPolarTheta coordUnitsY() const
Get method for x units.
const bool IS_X_THETA
CoordUnitsPolarTheta coordUnitsTheta() const
Get method for theta unit.
CoordUnitsTime coordUnitsTime() const
Get method for time format when used.
Format conversions between unformatted and formatted for CoordUnitsNonPolarTheta. ...
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.
CoordUnitsDate coordUnitsDate() const
Get method for date format when used.
const bool IS_NOT_X_THETA
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.
QLocale locale() const
Get method for locale.
log4cpp::Category * mainCat
Definition: Logger.cpp:14
CoordsType coordsType() const
Get method for coordinates type.
CoordUnitsNonPolarTheta coordUnitsX() const
Get method for x units.
Format conversions between unformatted and formatted for CoordUnitsStrategyPolarTheta.
#define LOG4CPP_DEBUG_S(logger)
Definition: convenience.h:20

The documentation for this class was generated from the following files: