3 #include "temperaturegraphitem.h"
4 #include "temperaturegraph.h"
7 TemperatureGraph::TemperatureGraph(QWidget
*parent
) : GraphTab(parent
)
12 setYLabel(tr("Temperature"));
14 setSliderPrecision(1);
17 TemperatureGraph::~TemperatureGraph()
22 void TemperatureGraph::setInfo()
25 QLocale
l(QLocale::system());
28 GraphView::addInfo(tr("Avg"), l
.toString(avg() * yScale() + yOffset(),
29 'f', 1) + UNIT_SPACE
+ yUnits());
30 GraphView::addInfo(tr("Min"), l
.toString(min() * yScale() + yOffset(),
31 'f', 1) + UNIT_SPACE
+ yUnits());
32 GraphView::addInfo(tr("Max"), l
.toString(max() * yScale() + yOffset(),
33 'f', 1) + UNIT_SPACE
+ yUnits());
35 GraphView::addInfo(tr("Average"), l
.toString(avg() * yScale()
36 + yOffset(), 'f', 1) + UNIT_SPACE
+ yUnits());
37 GraphView::addInfo(tr("Minimum"), l
.toString(min() * yScale()
38 + yOffset(), 'f', 1) + UNIT_SPACE
+ yUnits());
39 GraphView::addInfo(tr("Maximum"), l
.toString(max() * yScale()
40 + yOffset(), 'f', 1) + UNIT_SPACE
+ yUnits());
41 #endif // Q_OS_ANDROID
46 QList
<GraphItem
*> TemperatureGraph::loadData(const Data
&data
, Map
*map
)
49 QList
<GraphItem
*> graphs
;
51 for (int i
= 0; i
< data
.tracks().count(); i
++) {
52 const Track
&track
= data
.tracks().at(i
);
53 const Graph
&graph
= track
.temperature();
55 if (graph
.isEmpty()) {
59 TemperatureGraphItem
*gi
= new TemperatureGraphItem(graph
,
60 _graphType
, _width
, _palette
.nextColor());
67 _avg
.append(QPointF(track
.distance(), gi
->avg()));
72 for (int i
= 0; i
< data
.routes().count(); i
++) {
77 for (int i
= 0; i
< data
.areas().count(); i
++)
86 qreal
TemperatureGraph::avg() const
90 for (int i
= 0; i
< _avg
.size(); i
++) {
91 const QPointF
&p
= _avg
.at(i
);
99 void TemperatureGraph::clear()
109 void TemperatureGraph::setYUnits(Units units
)
111 if (units
== Metric
) {
112 GraphView::setYUnits(QChar(0x00B0) + tr("C"));
116 GraphView::setYUnits(QChar(0x00B0) + tr("F"));
122 void TemperatureGraph::setUnits(Units units
)
127 GraphView::setUnits(units
);
130 void TemperatureGraph::showTracks(bool show
)
134 for (int i
= 0; i
< _tracks
.size(); i
++) {
136 addGraph(_tracks
.at(i
));
138 removeGraph(_tracks
.at(i
));