Commit Graph

131 Commits

Author SHA1 Message Date
Mark Liversedge
54be65cf72 Fix new CP chart show bests
.. didn't show bests and model till date range changed
   in settings or GC was restarted.
2014-06-08 15:12:00 +01:00
Mark Liversedge
f86f4e7ed2 CP Plot Delta as Percent
.. delta plot but with percentage rather than absolute differences

.. particularly useful for plotting PD curve by seasons and looking
   at the gains/losses in percentage terms per season

.. also the differences in short and long durations in absolute terms
   often look quite different, in percentage terms there is often not
   a huge difference over seasons.

NOTE: Needs to be fixed up to do percentage differences by model.
2014-06-02 14:03:33 +01:00
Mark Liversedge
6e52284c39 Fix Overlay Widget
.. easier to grab and resize
.. move when it goes off screen
2014-06-01 18:48:16 +01:00
Mark Liversedge
f4237a0e93 CP settings nit 2014-05-26 14:58:17 +01:00
Mark Liversedge
3c36bbe481 CP Delta Compare Part 2a of 2a/b
.. just quickly commit the changes for delta compare for
   comparing rides and intervals.

.. still need to fix up the model delta compare.
2014-05-22 22:43:35 +01:00
Mark Liversedge
5e95b3ebcd CP Delta Compare Part 1 of 2
.. delta compare to use first date range as a baseline to
   compare other date ranges to.

.. only works for the bests curve in date range mode

.. in part 2 will add the model and also rides/intervals.
2014-05-22 21:54:11 +01:00
Mark Liversedge
cd4ce66de8 CPPlot Show Best Option
.. sometimes its useful just to see the model and not the bests
   curve. So added an option to get rid of the bests curve and
   show the model on its own.
2014-05-21 14:18:57 +01:00
Mark Liversedge
c85e4aa651 RideFile(RideFile*) can set context too
.. so no need to do it everywhere we create a temporary
   ridefile for computing metrics.
2014-05-20 21:05:18 +01:00
Mark Liversedge
a0313732e1 Fix interval metrics that use CP and Weight
.. by making sure the temporary RideFile used to calculate the
   interval metrics contains the tags from the main Ridefile.
2014-05-20 18:47:37 +01:00
Mark Liversedge
3505adc686 CP w/kg fixups
.. all the recent work on the CP chart has focused on absolute
   watts and not taken into account w/kg !

.. this fixes that up, but still need to look at w/kg on the
   model parameters stuff for the CP history chart
2014-05-19 17:16:19 +01:00
Mark Liversedge
7b4b024f63 Refactor CPPlot to use new PDModel
.. the last piece of the jigsaw for the CP chart refactoring was
   to use the new model class and remove the calculation in CPPlot.

.. we have now removed the ridefilecache out of CP, the model calculation
   and refactored to support multiple models.
2014-05-18 20:58:32 +01:00
Mark Liversedge
ffb7bc3117 Hide CP helper in compare mode 2014-05-11 14:12:00 +01:00
Mark Liversedge
66d2bd467e CP Chart can now export bests data
.. via a custom menu option on the chart menu (More...)

.. which means we also now have a mechanism for each chart
   to add their own menu options to the More... menu

.. will no doubt need to add this to the LTM chart
2014-05-03 20:39:46 +01:00
Mark Liversedge
04c0a02cf6 Tidy up 'Variant' label in CP settings
.. when Multicomponent model is not selected the 'variant'
   label gets left shown all by itself.
2014-05-03 11:05:53 +01:00
Mark Liversedge
b3f1ab1389 Michael Puchowicz Models
.. updated to include all 3 variants of the 'Veloclinic' model
   linear, exponential and regeneration models for the second
   component
2014-05-03 09:54:07 +01:00
Mark Liversedge
80272cff5c Veloclinic Multicomponent Model
.. implementation of the Veloclinic model, or at least
   the first of a few potential models.

.. It may not be correct at this point, but committing
   a checkpoint.
2014-04-26 22:44:05 +01:00
Mark Liversedge
0ff6226f33 Allow Multiple Helper Widgets
.. in GcOverlayWidget.
2014-04-22 09:57:12 +01:00
Damien
84928380bd Add hemoglobin SmO2% and tHb data series (Moxy) 2014-04-19 09:22:06 +02:00
Mark Liversedge
cc70788085 Add Vector/Rotor TE and PS data series
.. Added the torque effectiveness and pedal smoothness
   data series to the RideFile structures.

.. The only file formats that support it at this stage
   are Fit and  GoldenCheetah JSON.

.. As more file formats support it we will add it here.

.. The charts/editor now need to be updated to support
   these new data series.
2014-04-11 13:46:10 +01:00
Mark Liversedge
6eb21699b7 Smaller font on CP widget
.. 16 points was too big !
2014-04-10 22:10:09 +01:00
Mark Liversedge
5bd1d77b93 CP Chart Overlay
.. now has an overlay widget that can contain multiple widgets
   and is user movable and resizable etc

.. we show the model derived values for now, but could add other
   things at a later date (e.g. MU distribution etc).

Fixes #811.
2014-04-08 15:36:24 +01:00
Mark Liversedge
ae3b785531 Move grid to back CPPlot 2014-04-05 20:31:26 +01:00
Mark Liversedge
68c0fbe3f5 CP Chart gets grid back
.. put the grid back on the cp chart, which is less ugly
   now we can set and honour colours for it and the background.
2014-03-30 20:08:14 +01:00
Mark Liversedge
203f2d4b46 Remove CP friend class
.. its a hack, and wasn't really needed

.. also reimplemented getBest() functions since they
   incorreclty assumed that bestsCache would never be NULL
2014-03-26 11:04:49 +00:00
Mark Liversedge
3c490c49a0 CP plot handling empty rides 2014-03-25 16:23:34 +00:00
Mark Liversedge
761c78b3b2 CP Refactor 2 of 3
.. fixup ride mode, interval hover crash/bugs
.. fixup interval compare mode
.. fixup rangemode

NOTE: Compare date ranges is still broken that
      will be fixed in part 3.
2014-03-25 10:49:58 +00:00
Mark Liversedge
59101530c6 Copyright message update for CP chart 2014-03-24 21:39:46 +00:00
Mark Liversedge
67cf487d38 CP Refactor 1 of 3
.. basic ride, bests and model plots all working

.. Compare mode is now BROKEN !

Will fixup the rest tomorrow, needed to checkpoint
the core refactoring work.
2014-03-24 21:30:15 +00:00
Mark Liversedge
d4cff64ff3 CP Code Wash before Refactor
.. the CP plot curve is a terrible mess. Mostly from
   having multiple significant updates from a number
   of notable developers; Sean, Dan, Mark and Damien
   have all made significant contributions.

.. But the code contains lots of 'smells' and is very
   difficult to follow and update

.. this update makes no functional changes but is put
   in place before overhauling the code related to
   "calculating" and plotting the different curves.
2014-03-24 11:08:07 +00:00
Mark Liversedge
ccfaaf3b97 Fix CP chart reveal controls on QT5
.. and also remove the yucky labels on the chart in readiness
   for a CP model widget to overlay and move about the chart.
2014-03-21 12:38:11 +00:00
Mark Liversedge
cfdd32ac64 CP chart now has reveal controls
.. for show heat and show as percentage
2014-03-20 17:27:01 +00:00
Mark Liversedge
8c4ac0abf6 More CP fixups
.. hover curve clear on new ride

.. fix ride plot mode so when plotting ride it always
   does. This was fixed by initialising ridePlotMode in
   the CpintPlot constructor.
2014-03-19 18:20:56 +00:00
Mark Liversedge
e226083efc More CP plot fixups
.. allplot color fixed when not a rainbow curve

.. fix SEGV index bounds check off by one

.. hover curve z-order to top
2014-03-19 17:52:40 +00:00
Mark Liversedge
06bf617c69 CP pointHover fixup
.. bounds checking on array index
.. set curve grey not white!
2014-03-19 16:18:43 +00:00
Mark Liversedge
ba5247eb3a CP pointHover
.. plot the interval on hover in the sidebar.
2014-03-19 15:53:58 +00:00
Mark Liversedge
4e81a529a0 CP plot ride as %age of best
.. to quantify the areas trained during the ride
2014-03-18 21:34:32 +00:00
Damien
cea0cb4e05 CriticalPowerWindow: Add a Heat by Date option 2014-03-15 22:52:53 +01:00
Mark Liversedge
7f02ed473e Add Heat to CP chart.
.. from an idea from Michael Puchowiz during discussions
   about a Multicomponent PMC.
2014-03-14 10:08:18 +00:00
Mark Liversedge
6a43f0ded6 Little More Background Honour
.. updated a few more of the charts to honor the chart
   background property so the chart and chrome are all
   in the color the user specified.
2014-03-10 20:55:45 +00:00
Mark Liversedge
a33831f8bf Add Configuration for Train View Color
.. the background was set from the ride plot background.
   we now have a separate configuration option for this.
2014-03-07 12:00:25 +00:00
Mark Liversedge
3151f4e383 Delta character in CP settings 2014-02-28 08:50:25 +00:00
Damien
dfe526926b CriticalPowerPlot: Add Power by inv time plot 2014-02-28 07:20:40 +01:00
Mark Liversedge
4e9d26d2e0 Delta Watts, Torque, Cadence and HR
.. Following on from the recent update to add acceleration
   this update adds other derived data series based upon the
   rate of change.

.. Added to the ride plot and the CP plot.

Not sure of the overall utility of these updates but bear in
mind that they are targetting sprinting and track users and
analysis.

As well as the positive side of this (development of power
cadence etc) we also want to think about and collect data
on fatigue rate (possibly only power and torque)
- fatigue over time
- fatigue over pedal stroke
2014-02-25 18:44:53 +00:00
Mark Liversedge
a101581dc2 Fixup CP interval plot
.. w/kg and accel were a mess and the code didn't honour
   decimal places properly.
2014-02-22 15:12:52 +00:00
Mark Liversedge
ff068705ad Add Acceleration to CP curve
.. and fixup related bugs in ridefilecache
2014-02-22 12:31:22 +00:00
Mark Liversedge
789a7c0a70 CP chart settings into tabs
.. there were too many settings on one page
   so split into tabs
2014-01-12 14:59:43 +00:00
Damien
eaba1fef7d CriticalPowerWindow: small correction 2014-01-04 00:46:15 +01:00
Mark Liversedge
df15888b0b AllPlot Compare Mode
.. extending the interval compare to the allplot chart.
2014-01-03 14:59:20 +00:00
Mark Liversedge
f90eb8a929 CP honour Appearances setting for Linewidth
.. it should have been done a long time ago!
2013-12-31 14:57:39 +00:00
Mark Liversedge
fd72ad67d3 More CP Fixups
Basically to distinguish between the four modes
and only show what you are asking for;

* rangemode + normal  - the currently highlighted season only
* rangemode + compare - the compare pane seasons only
* ridemode  + normal  - the current ride and left pane intervals only
* ridemode  + compare - the compare pane intervals only
2013-12-31 13:52:41 +00:00