Averaging heights
This commit is contained in:
parent
99daeefa98
commit
790a692529
|
@ -1,5 +1,6 @@
|
|||
export const getHeightStats = (wpts: Wpt[]) => {
|
||||
let previous: number | null = null,
|
||||
previousAvg: number | null = null,
|
||||
min: number | null = null,
|
||||
max: number | null = null,
|
||||
positive: number = 0,
|
||||
|
@ -7,7 +8,7 @@ export const getHeightStats = (wpts: Wpt[]) => {
|
|||
|
||||
wpts.forEach((wpt) => {
|
||||
if (wpt.ele) {
|
||||
const ele = Math.round(wpt.ele);
|
||||
const ele = 10 * Math.round(wpt.ele / 10);
|
||||
if (!max || ele > max) {
|
||||
max = ele;
|
||||
}
|
||||
|
@ -15,12 +16,16 @@ export const getHeightStats = (wpts: Wpt[]) => {
|
|||
min = ele;
|
||||
}
|
||||
if (previous) {
|
||||
if (ele > previous) {
|
||||
positive += ele - previous;
|
||||
const avg = (ele + previous) / 2;
|
||||
if (previousAvg) {
|
||||
if (avg > previousAvg) {
|
||||
positive += avg - previousAvg;
|
||||
} else {
|
||||
negative += previous - ele;
|
||||
negative += avg - previousAvg;
|
||||
}
|
||||
}
|
||||
previousAvg = avg;
|
||||
}
|
||||
previous = ele;
|
||||
}
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue