Commit Graph

21 Commits

Author SHA1 Message Date
Mark Liversedge
35f52fdc9e Add xPower and Normalized Power to Critical Plot
The Skiba and Coggan metrics for xPower and NP
respectively can now be plotted on the CP curve.

There are two issues;
* Downsampling of data to 5s samples skews xPower's EWMA
* Setting scale to start at 30mins breaks the x-axis scale engine

Both issues need fixing, since the first skews xPower upwards and
the second suggests that xPower/NP are meaningful for durations
less than 30 minutes.

Fixes #307.
2011-04-28 23:51:55 +01:00
Mark Liversedge
c4494524fd Plot more data on the CP plot and use a binary cache file
This patch enables more data series to be plotted on a CP plot.
We can now show curves for heartrate, cadence, speed and torque
as well as the original power and energy.

The CP code is refactored into the plotting functions and a new
RideFileCache that precomputes the mean-max as well as distribution
data (for a later patch to show histograms across date ranges).

The code for computing mean-max values has been re-written and
significantly optimised by;
* computing 1s intervals up to 5mins only
* computing 20s intervals for the remainder of the ride
* downsampling data to 5s samples for longer durations
* using a binary file format (cpx) for faster read/aggregation
* using multiple threads

Testing on an old Athlon dual-core showed an increase in performance
over the old cpi code of approximately x20, but since new data series
are now computed it is only x4 faster. Quad/Octo core systems will
show a greater performance increase though.
2011-04-25 02:20:19 +01:00
Mark Liversedge
6333152dec post merge master in release_3.0.0dev fixups. 2011-02-27 11:36:14 +00:00
kohasa
39fa61a620 enabled editing interval duration by keyboard.
Fixes #125
2011-02-27 11:07:48 +00:00
Mark Liversedge
805e74de5a Inital V3 Branch 2010-12-30 17:35:23 +00:00
Mark Liversedge
a6a3c90c54 User Configurable Colors
A new config pane for defining color preferences for chart
curves, shading, background and grid lines et al. Default values
echo the current hard-coded values.
2010-04-01 10:29:13 -04:00
Sean Rhea
ac0876ac3c combine setActive and rideSelected
And pay attention to MainWindow::activeTab, such that only the active
tab redraws itself when changing rides.  This change really increases
GC's responsiveness when scrolling through the ride list.
2010-03-21 22:03:12 -07:00
Sean Rhea
811cbb26b1 maybe fix problem with Set CP button not enabled 2010-03-12 10:45:08 -05:00
Mitsukuni Sato
93937badee add calls to tr() for translation 2009-12-17 19:10:36 -05:00
Damien Grauser
b0c60cbced add language selector and French translations 2009-12-12 15:23:46 -05:00
Sean Rhea
a4109494bd introduce MainWindow rideSelected signal
...and use it to update the various tabs when a ride is selected.
2009-12-10 13:13:10 -08:00
Sean Rhea
de854eb79a public zones in MainWindow is const 2009-12-10 10:16:58 -08:00
Sean Rhea
41ec865985 cp plot gets zones in its constructor 2009-12-10 10:16:57 -08:00
Sean Rhea
359fef980b fix season selector in cp plot 2009-11-27 16:46:09 -05:00
Sean Rhea
2ca6096b0e add y-axis shows work mode to CP plot
This mode is fun because the "CP Curve" is a straight line,
just like in the model:

  work = CP * time + AWC

You can also see that the AWC is the y-intercept.
2009-11-09 09:05:03 -08:00
Sean Rhea
29a9919dbd don't show CP values off the end of lines
I.e., if the user selects a time to the left of the red dashed CP line,
we shouldn't show a value in the "CP Curve" box.
2009-11-09 10:03:50 -05:00
Sean Rhea
e7dd9dcd16 use foreach 2009-11-09 09:56:48 -05:00
Sean Rhea
7ed6c99a85 prefer most recent season in CP plot 2009-11-09 09:54:34 -05:00
Sean Rhea
3f19060399 add cp curve value, make room in best value
I am so not a UI designer, but it least now all the information is there and
visible.  UI types: please dive in at any time.
2009-10-26 20:29:20 -04:00
Justin Knotzke
35e5ad6e7c Filtering of data in Critical Plot based on Seasons
Based on the defined dates per season, CP displays all plot only
for that Season.
2009-10-22 21:45:07 -07:00
Sean Rhea
6f6f891fd7 abstract "Critical Power Plot" tab into its own class 2009-10-07 09:47:17 -04:00