diff --git a/lib/www/client/source/src/views/MapLayersMixin.vue b/lib/www/client/source/src/views/MapLayersMixin.vue
index 5dc4e10..eec7030 100644
--- a/lib/www/client/source/src/views/MapLayersMixin.vue
+++ b/lib/www/client/source/src/views/MapLayersMixin.vue
@@ -305,14 +305,21 @@ export default {
const paths = [];
let prevTstamp;
- paths.push({path: [], timestamps: [], num: 0});
+ paths.push({path: [], timestamps: [], num: 0, ts0: +Infinity, ts1: -Infinity});
for (const el of data) {
const tstamp = new Date(el.tstamp).valueOf();
const curPath = () => paths[paths.length-1];
if (prevTstamp && Math.abs(tstamp - prevTstamp) > breakLimit) {
// Start a new path
console.log(`Breaking path on interval ${Math.abs(tstamp - prevTstamp)} > ${breakLimit}`);
- paths.push({path: [], timestamps: [], num: paths.length});
+ paths.push({path: [], timestamps: [], num: paths.length, ts0: +Infinity, ts1: -Infinity});
+ }
+
+ if (tstamp < curPath().ts0) {
+ curPath().ts0 = tstamp;
+ }
+ if (tstamp > curPath().ts1) {
+ curPath().ts1 = tstamp;
}
curPath().path.push([el.x, el.y]);
@@ -320,6 +327,12 @@ export default {
prevTstamp = tstamp;
}
+ paths.forEach (path => {
+ path.nums = paths.length;
+ path.ts0 = new Date(path.ts0);
+ path.ts1 = new Date(path.ts1);
+ });
+
return paths;
},
getPath: d => d.path,
diff --git a/lib/www/client/source/src/views/MapTooltipsMixin.vue b/lib/www/client/source/src/views/MapTooltipsMixin.vue
index 970c2f3..85a5a73 100644
--- a/lib/www/client/source/src/views/MapTooltipsMixin.vue
+++ b/lib/www/client/source/src/views/MapTooltipsMixin.vue
@@ -244,10 +244,10 @@ export default {
console.log("track lines tooltip", p);
if (p) {
- const ts1 = new Date(p.timestamps[0] * 1000);
- const ts0 = new Date(p.timestamps[p.timestamps.length-1] * 1000);
- let html = `${ts0.toISOString()}
\n${ts1.toISOString()}
\n`
+ let html = `Segment ${p.num+1} / ${p.nums}
\n`
+ html += `${p.ts0.toISOString()}
\n`
+ html += `${p.ts1.toISOString()}
\n`;
return {html, style: this.tooltipDefaultStyle};
}