From 5593c8e3f77902de2db29abcd55346f8226c6318 Mon Sep 17 00:00:00 2001 From: "Sean C. Rhea" Date: Mon, 12 Feb 2007 20:14:16 +0000 Subject: [PATCH] add work, clarify units --- src/gui/RideItem.cpp | 40 ++++++++++++++++++++++++++++++---------- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/src/gui/RideItem.cpp b/src/gui/RideItem.cpp index 39de3072b..91b317e9d 100644 --- a/src/gui/RideItem.cpp +++ b/src/gui/RideItem.cpp @@ -83,6 +83,7 @@ static void summarize(QString &intervals, : (int) (int_cad_sum / int_cad_cnt); double mph_avg = (int_mph_cnt == 0) ? 0 : (int) (int_mph_sum / int_mph_cnt); + double energy = watts_avg / 1000.0 * dur; intervals += "%1"; intervals += "%2:%3"; @@ -91,10 +92,12 @@ static void summarize(QString &intervals, intervals += "%6"; intervals += "%7"; intervals += "%8"; + intervals += "%9"; intervals = intervals.arg(last_interval); intervals = intervals.arg(minutes, 0, 'f', 0); intervals = intervals.arg(seconds, 0, 'f', 0); intervals = intervals.arg(len, 0, 'f', 1); + intervals = intervals.arg(energy, 0, 'f', 0); intervals = intervals.arg(watts_avg, 0, 'f', 0); intervals = intervals.arg(hr_avg, 0, 'f', 0); intervals = intervals.arg(cad_avg, 0, 'f', 0); @@ -123,6 +126,7 @@ RideItem::htmlSummary() double secs_moving = 0.0; double total_watts = 0.0; double secs_watts = 0.0; + double avg_watts = 0.0; double secs_hr = 0.0; double total_hr = 0.0; double secs_cad = 0.0; @@ -198,28 +202,33 @@ RideItem::htmlSummary() int_hr_sum, int_cad_cnt, int_cad_sum, int_mph_cnt, int_mph_sum); + avg_watts = (secs_watts == 0.0) ? 0.0 + : round(total_watts / secs_watts); + summary += "

"; summary += ""; - summary += QString("" + summary += QString("" "") .arg(raw->points.back()->miles, 0, 'f', 1); - summary += QString("" + summary += QString("" + "") + .arg((unsigned) (avg_watts / 1000.0 * secs_moving)); + summary += QString("" "") .arg(((secs_moving == 0.0) ? 0.0 : raw->points.back()->miles / secs_moving * 3600.0), 0, 'f', 1); - summary += QString("" + summary += QString("" "") - .arg((unsigned) ((secs_watts == 0.0) ? 0.0 - : round(total_watts / secs_watts))); - summary +=QString("" + .arg((unsigned) avg_watts); + summary +=QString("" "") .arg((unsigned) ((secs_hr == 0.0) ? 0.0 : round(total_hr / secs_hr))); - summary += QString("" + summary += QString("" "") .arg((unsigned) ((secs_cad == 0.0) ? 0.0 : round(total_cad / secs_cad))); @@ -229,12 +238,23 @@ RideItem::htmlSummary() summary += "

Intervals

\n

\n"; summary += "

Total workout time:" + time_to_string(raw->points.back()->secs); summary += "
Total time riding:" + time_to_string(secs_moving) + "
Total distance:
Total distance (miles):%1
Average speed:
Total work (kJ):%1
Average speed (mph):%1
Average power:
Average power (watts):%1
Average heart rate:
Average heart rate (bpm):%1
Average cadence:
Average cadence (rpm):%1
"; summary += ""; - summary += ""; + summary += ""; summary += ""; - summary += ""; + summary += ""; + summary += ""; summary += ""; summary += ""; - summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; + summary += ""; summary += intervals; summary += "
IntervalTimeDistanceAvg WattsWorkAvg PowerAvg HRAvg CadenceAvg MPH
Avg Speed
NumberDuration(miles)(kJ)(watts)(bpm)(rpm)(mph)
"; }