From e75adfb555278d4876df9238cc5d010bc5c4eb73 Mon Sep 17 00:00:00 2001 From: afischerdev Date: Wed, 6 Mar 2024 19:54:48 +0100 Subject: [PATCH 1/2] enabled raw track for test only --- brouter-server/src/main/java/btools/server/BRouter.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/brouter-server/src/main/java/btools/server/BRouter.java b/brouter-server/src/main/java/btools/server/BRouter.java index 1600c7e..eedc8b2 100644 --- a/brouter-server/src/main/java/btools/server/BRouter.java +++ b/brouter-server/src/main/java/btools/server/BRouter.java @@ -105,7 +105,8 @@ public class BRouter { if (engineMode == RoutingEngine.BROUTER_ENGINEMODE_GETELEV) { re = new RoutingEngine("testinfo", null, new File(args[0]), wplist, rc, engineMode); } else { - rc.rawTrackPath = "testtrack.raw"; + // use this to generate a raw track for CLI + // rc.rawTrackPath = "testtrack.raw"; re = new RoutingEngine("testtrack", null, new File(args[0]), wplist, rc, engineMode); } re.doRun(0); @@ -114,7 +115,7 @@ public class BRouter { engineMode == RoutingEngine.BROUTER_ENGINEMODE_PREPARE_REROUTE) { // store new reference track if any // (can exist for timed-out search) - if (re.getFoundRawTrack() != null) { + if (rc.rawTrackPath != null && re.getFoundRawTrack() != null) { try { re.getFoundRawTrack().writeBinary(rc.rawTrackPath); } catch (Exception e) { From 28e6523ab94c2f5de010b4acd41bc60933e95807 Mon Sep 17 00:00:00 2001 From: afischerdev Date: Wed, 6 Mar 2024 19:57:12 +0100 Subject: [PATCH 2/2] wrong last message in track #657 --- brouter-core/src/main/java/btools/router/OsmTrack.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/brouter-core/src/main/java/btools/router/OsmTrack.java b/brouter-core/src/main/java/btools/router/OsmTrack.java index ac278d1..6c64cf7 100644 --- a/brouter-core/src/main/java/btools/router/OsmTrack.java +++ b/brouter-core/src/main/java/btools/router/OsmTrack.java @@ -346,6 +346,12 @@ public final class OsmTrack { if (i > 0 || ourSize == 0) { e.setTime(e.getTime() + t0); e.setEnergy(e.getEnergy() + e0); + if (e.message != null){ + if (!(e.message.lon == e.getILon() && e.message.lat == e.getILat())) { + e.message.lon = e.getILon(); + e.message.lat = e.getILat(); + } + } nodes.add(e); } }