diff --git a/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs b/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs index dcd1970e7c3b0af866deecc204d8638d3c77378a..5ae5ec47d3d60f7ef2fa3bf0ada8b58ef5e8f0a9 100644 --- a/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs +++ b/VectoCore/VectoCore/Models/SimulationComponent/Impl/DistanceBasedDrivingCycle.cs @@ -261,7 +261,7 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl } CurrentState.WaitPhase = 0; - CurrentState.Distance = PreviousState.Distance + ds; + //CurrentState.Distance = PreviousState.Distance + ds; CurrentState.SimulationDistance = ds; CurrentState.VehicleTargetSpeed = Left.VehicleTargetSpeed; CurrentState.Gradient = ComputeGradient(ds); @@ -274,6 +274,9 @@ namespace TUGraz.VectoCore.Models.SimulationComponent.Impl retVal = NextComponent.Request(absTime, ds, CurrentState.VehicleTargetSpeed, CurrentState.Gradient); }); CurrentState.AbsTime = absTime; + if (retVal is ResponseSuccess) { + CurrentState.Distance = PreviousState.Distance + retVal.SimulationDistance; + } return retVal; } diff --git a/VectoCore/VectoCoreTest/Utils/MockDriver.cs b/VectoCore/VectoCoreTest/Utils/MockDriver.cs index 7315419a5d7d19092983f24c9fce9fa3961840be..90dcf0c21ca6277f2b62af26f77d4dd2aa97d33a 100644 --- a/VectoCore/VectoCoreTest/Utils/MockDriver.cs +++ b/VectoCore/VectoCoreTest/Utils/MockDriver.cs @@ -70,7 +70,7 @@ namespace TUGraz.VectoCore.Tests.Utils LastRequest = new RequestData { AbsTime = absTime, ds = ds, Gradient = gradient, TargetVelocity = targetVelocity }; var acc = 0.SI<MeterPerSquareSecond>(); var dt = 1.SI<Second>(); - return new ResponseSuccess { SimulationInterval = dt, Source = this }; + return new ResponseSuccess { SimulationInterval = dt, SimulationDistance = ds, Source = this }; } public IResponse Request(Second absTime, Second dt, MeterPerSecond targetVelocity, Radian gradient)