Add support for running power zones (Stryd) part 3

Final part: use the zones according to sport in metrics and charts
This commit is contained in:
Alejandro Martinez
2015-12-18 12:04:40 -03:00
parent 95479401d9
commit 078d4ac5ad
31 changed files with 195 additions and 189 deletions

View File

@@ -1418,14 +1418,14 @@ RideFileCache::computeDistribution(QVector<float> &array, RideFile::SeriesType s
if (ride->isDataPresent(needSeries) == false) return;
// get zones that apply, if any
int zoneRange = context->athlete->zones() ? context->athlete->zones()->whichRange(ride->startTime().date()) : -1;
int zoneRange = context->athlete->zones(ride->isRun()) ? context->athlete->zones(ride->isRun())->whichRange(ride->startTime().date()) : -1;
int hrZoneRange = context->athlete->hrZones() ? context->athlete->hrZones()->whichRange(ride->startTime().date()) : -1;
int paceZoneRange = context->athlete->paceZones(ride->isSwim()) ? context->athlete->paceZones(ride->isSwim())->whichRange(ride->startTime().date()) : -1;
if (zoneRange != -1) CP=context->athlete->zones()->getCP(zoneRange);
if (zoneRange != -1) CP=context->athlete->zones(ride->isRun())->getCP(zoneRange);
else CP=0;
if (zoneRange != -1) WPRIME=context->athlete->zones()->getWprime(zoneRange);
if (zoneRange != -1) WPRIME=context->athlete->zones(ride->isRun())->getWprime(zoneRange);
else WPRIME=0;
if (hrZoneRange != -1) LTHR=context->athlete->hrZones()->getLT(hrZoneRange);
@@ -1484,7 +1484,7 @@ RideFileCache::computeDistribution(QVector<float> &array, RideFile::SeriesType s
// watts time in zone
if (series == RideFile::watts && zoneRange != -1) {
int index = context->athlete->zones()->whichZone(zoneRange, dp->value(series));
int index = context->athlete->zones(ride->isRun())->whichZone(zoneRange, dp->value(series));
if (index >=0) wattsTimeInZone[index] += ride->recIntSecs();
}