15 #include <QTextStream>
17 #include <QXmlStreamWriter>
20 const double PI = 3.1415926535;
42 m_coordsType (document.modelCoords().coordsType()),
43 m_originRadius(document.modelCoords().originRadius()),
44 m_coordScaleXTheta(document.modelCoords().coordScaleXTheta()),
45 m_coordScaleYRadius(document.modelCoords().coordScaleYRadius()),
46 m_coordUnitsX(document.modelCoords().coordUnitsX()),
47 m_coordUnitsY(document.modelCoords().coordUnitsY()),
48 m_coordUnitsTheta(document.modelCoords().coordUnitsTheta()),
49 m_coordUnitsRadius(document.modelCoords().coordUnitsRadius()),
50 m_coordUnitsDate(document.modelCoords().coordUnitsDate()),
51 m_coordUnitsTime(document.modelCoords().coordUnitsTime())
56 m_coordsType (other.coordsType ()),
57 m_originRadius (other.originRadius ()),
58 m_coordScaleXTheta (other.coordScaleXTheta()),
59 m_coordScaleYRadius (other.coordScaleYRadius ()),
60 m_coordUnitsX (other.coordUnitsX()),
61 m_coordUnitsY (other.coordUnitsY()),
62 m_coordUnitsTheta (other.coordUnitsTheta ()),
63 m_coordUnitsRadius (other.coordUnitsRadius ()),
64 m_coordUnitsDate (other.coordUnitsDate ()),
65 m_coordUnitsTime (other.coordUnitsTime ())
87 return m_coordScaleXTheta;
92 return m_coordScaleYRadius;
102 return m_coordUnitsDate;
107 return m_coordUnitsRadius;
112 return m_coordUnitsTheta;
117 return m_coordUnitsTime;
122 return m_coordUnitsX;
127 return m_coordUnitsY;
136 QXmlStreamAttributes attributes = reader.attributes();
161 while ((reader.tokenType() != QXmlStreamReader::EndElement) ||
164 if (reader.atEnd()) {
172 reader.raiseError (QObject::tr (
"Cannot read coordinates data"));
178 return m_originRadius;
182 QTextStream &str)
const
184 str << indentation <<
"DocumentModelCoords\n";
189 str << indentation <<
"originRadius=" << m_originRadius <<
"\n";
190 str << indentation <<
"coordScaleXTheta=" <<
coordScaleToString (m_coordScaleXTheta) <<
"\n";
191 str << indentation <<
"coordScaleYRadius=" <<
coordScaleToString (m_coordScaleYRadius) <<
"\n";
224 writer.writeEndElement();
229 m_coordScaleXTheta = coordScale;
234 m_coordScaleYRadius = coordScale;
244 m_coordUnitsDate = coordUnits;
249 m_coordUnitsRadius = coordUnits;
254 m_coordUnitsTheta = coordUnits;
259 m_coordUnitsTime = coordUnits;
264 m_coordUnitsX = coordUnits;
269 m_coordUnitsY = coordUnits;
279 switch (m_coordUnitsTheta) {
void setCoordUnitsTime(CoordUnitsTime coordUnits)
Set method for time units.
void setCoordUnitsDate(CoordUnitsDate coordUnits)
Set method for date units.
QXmlStreamReader::TokenType loadNextFromReader(QXmlStreamReader &reader)
Load next token from xml reader.
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_DATE_STRING
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_RADIUS
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_RADIUS_STRING
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_Y
const QString INDENTATION_DELTA
void setCoordUnitsY(CoordUnitsNonPolarTheta coordUnits)
Set method for y units.
const QString DOCUMENT_SERIALIZE_COORDS_ORIGIN_RADIUS
virtual void loadXml(QXmlStreamReader &reader)
Load model from serialized xml.
void setCoordUnitsX(CoordUnitsNonPolarTheta coordUnits)
Set method for x units.
const QString DOCUMENT_SERIALIZE_COORDS
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_THETA_STRING
QString coordUnitsNonPolarThetaToString(CoordUnitsNonPolarTheta coordUnits)
CoordScale coordScaleYRadius() const
Get method for linear/log scale on y/radius.
void printStream(QString indentation, QTextStream &str) const
Debugging method that supports print method of this class and printStream method of some other class(...
double originRadius() const
Get method for origin radius in polar mode.
void setCoordScaleYRadius(CoordScale coordScale)
Set method for linear/log scale on y/radius.
CoordUnitsNonPolarTheta coordUnitsRadius() const
Get method for radius units.
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_TIME_STRING
#define LOG4CPP_INFO_S(logger)
QString coordUnitsDateToString(CoordUnitsDate coordUnits)
QString coordUnitsPolarThetaToString(CoordUnitsPolarTheta coordUnits)
const QString DOCUMENT_SERIALIZE_COORDS_TYPE_STRING
CoordUnitsTime coordUnitsTime() const
Get method for time format when used.
DocumentModelCoords & operator=(const DocumentModelCoords &other)
Assignment constructor.
const QString DOCUMENT_SERIALIZE_COORDS_SCALE_Y_RADIUS
const QString DOCUMENT_SERIALIZE_COORDS_TYPE
DocumentModelCoords()
Default constructor.
#define LOG4CPP_ERROR_S(logger)
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_X
double thetaPeriod() const
Return the period of the theta value for polar coordinates, consistent with CoordThetaUnits.
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_TIME
virtual void saveXml(QXmlStreamWriter &writer) const
Save entire model as xml into stream.
CoordUnitsNonPolarTheta coordUnitsY() const
Get method for x units.
CoordScale coordScaleXTheta() const
Get method for linear/log scale on x/theta.
const QString DOCUMENT_SERIALIZE_COORDS_SCALE_X_THETA_STRING
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_DATE
void setCoordUnitsTheta(CoordUnitsPolarTheta coordUnits)
Set method for theta units.
const QString DOCUMENT_SERIALIZE_COORDS_SCALE_X_THETA
CoordsType coordsType() const
Get method for coordinates type.
CoordUnitsNonPolarTheta coordUnitsX() const
Get method for x units.
Model for DlgSettingsCoords and CmdSettingsCoords.
void setOriginRadius(double originRadius)
Set method for origin radius in polar mode.
Storage of one imported image and the data attached to that image.
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_THETA
CoordUnitsDate coordUnitsDate() const
Get method for date format when used.
void setCoordUnitsRadius(CoordUnitsNonPolarTheta coordUnits)
Set method for radius units.
log4cpp::Category * mainCat
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_X_STRING
QString coordsTypeToString(CoordsType coordsType)
QString coordUnitsTimeToString(CoordUnitsTime coordUnits)
const QString DOCUMENT_SERIALIZE_COORDS_UNITS_Y_STRING
const QString DOCUMENT_SERIALIZE_COORDS_SCALE_Y_RADIUS_STRING
const double DEFAULT_ORIGIN_RADIUS_LINEAR
void setCoordScaleXTheta(CoordScale coordScale)
Set method for linear/log scale on x/theta.
CoordUnitsPolarTheta coordUnitsTheta() const
Get method for theta unit.
#define ENGAUGE_ASSERT(cond)
Drop in replacement for Q_ASSERT if defined(QT_NO_DEBUG) && !defined(QT_FORCE_ASSERTS) define ENGAUGE...
QString coordScaleToString(CoordScale coordScale)
void setCoordsType(CoordsType coordsType)
Set method for coordinates type.