From 53a0aac21d27dd68df30571d3c14bbbf5f68ae7c Mon Sep 17 00:00:00 2001 From: Arndt Brenschede Date: Sun, 8 Jul 2018 12:10:23 +0200 Subject: [PATCH] locus ETA --- .../src/main/java/btools/router/OsmTrack.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/brouter-core/src/main/java/btools/router/OsmTrack.java b/brouter-core/src/main/java/btools/router/OsmTrack.java index dfb9d5b..0611abb 100644 --- a/brouter-core/src/main/java/btools/router/OsmTrack.java +++ b/brouter-core/src/main/java/btools/router/OsmTrack.java @@ -421,14 +421,25 @@ public final class OsmTrack if ( turnInstructionMode == 2 ) // locus style { + float lastRteTime = 0.f; + for( VoiceHint hint: voiceHints.list ) { sb.append( " " ) .append( hint.selev == Short.MIN_VALUE ? "" : "" + (hint.selev / 4.) + "" ) .append( "" ).append( hint.getMessageString() ).append( "" ) - .append( "" ).append( "" + hint.distanceToNext ).append( "" ) - .append( "" ).append( "" + hint.getLocusAction() ).append( "" ) + .append( "" ).append( "" + hint.distanceToNext ).append( "" ); + float rteTime = hint.getTime(); + if ( rteTime != lastRteTime ) // add timing only if available + { + double t = rteTime - lastRteTime; + double speed = hint.distanceToNext / t; + sb.append( "" ).append( "" + t ).append( "" ) + .append( "" ).append( "" + speed ).append( "" ); + lastRteTime = rteTime; + } + sb.append( "" ).append( "" + hint.getLocusAction() ).append( "" ) .append( "\n" ); } }