2 #include "powergraph.h"
5 PowerGraph::PowerGraph(QWidget
*parent
) : GraphTab(parent
)
10 GraphView::setYUnits(tr("W"));
11 setYLabel(tr("Power"));
13 setSliderPrecision(1);
16 void PowerGraph::setInfo()
19 GraphView::addInfo(tr("Average"), QString::number(avg() * yScale()
20 + yOffset(), 'f', 1) + UNIT_SPACE
+ yUnits());
21 GraphView::addInfo(tr("Maximum"), QString::number(max() * yScale()
22 + yOffset(), 'f', 1) + UNIT_SPACE
+ yUnits());
27 void PowerGraph::loadData(const Data
&data
, const QList
<PathItem
*> &paths
)
29 for (int i
= 0; i
< data
.tracks().count(); i
++) {
30 const Graph
&graph
= data
.tracks().at(i
)->power();
33 if (graph
.size() < 2) {
38 for (int j
= 1; j
< graph
.size(); j
++) {
39 qreal ds
= graph
.at(j
).s() - graph
.at(j
-1).s();
40 sum
+= graph
.at(j
).y() * ds
;
43 _avg
.append(QPointF(data
.tracks().at(i
)->distance(), sum
/w
));
45 GraphView::loadGraph(graph
, paths
.at(i
));
48 for (int i
= 0; i
< data
.routes().count(); i
++)
56 qreal
PowerGraph::avg() const
59 QList
<QPointF
>::const_iterator it
;
61 for (it
= _avg
.begin(); it
!= _avg
.end(); it
++) {
62 sum
+= it
->y() * it
->x();
69 void PowerGraph::clear()
76 void PowerGraph::showTracks(bool show
)