diff --git a/RAWSimO.Core/Statistics/DataPoint.cs b/RAWSimO.Core/Statistics/DataPoint.cs index e18b4b8d..d648ad7c 100644 --- a/RAWSimO.Core/Statistics/DataPoint.cs +++ b/RAWSimO.Core/Statistics/DataPoint.cs @@ -1525,8 +1525,8 @@ public FootprintDatapoint(Instance instance) _entryValues[FootPrintEntry.OrdersRejected] = instance.StatOverallOrdersRejected; _entryValues[FootPrintEntry.BundlesInBacklogRemaining] = instance.ItemManager.BacklogBundleCount; _entryValues[FootPrintEntry.OrdersInBacklogRemaining] = instance.ItemManager.BacklogOrderCount; - _entryValues[FootPrintEntry.BundlesInBacklogAvg] = instance.Observer.BundleOrderSituationLog.Average(d => d.BacklogBundleCount); - _entryValues[FootPrintEntry.OrdersInBacklogAvg] = instance.Observer.BundleOrderSituationLog.Average(d => d.BacklogOrderCount); + _entryValues[FootPrintEntry.BundlesInBacklogAvg] = instance.Observer.BundleOrderSituationLog.Count() > 0 ? instance.Observer.BundleOrderSituationLog.Average(d => d.BacklogBundleCount) : 0; + _entryValues[FootPrintEntry.OrdersInBacklogAvg] = instance.Observer.BundleOrderSituationLog.Count() > 0 ? instance.Observer.BundleOrderSituationLog.Average(d => d.BacklogOrderCount) : 0; // Overall performance _entryValues[FootPrintEntry.BundlesHandled] = instance.StatOverallBundlesHandled; _entryValues[FootPrintEntry.ItemsHandled] = instance.StatOverallItemsHandled; diff --git a/RAWSimO.Visualization/MainWindow.xaml.cs b/RAWSimO.Visualization/MainWindow.xaml.cs index f6696a9c..0f4b55da 100644 --- a/RAWSimO.Visualization/MainWindow.xaml.cs +++ b/RAWSimO.Visualization/MainWindow.xaml.cs @@ -556,6 +556,9 @@ private void ExecuteInstance() _instance.SettingConfig.LogAction = LogLine; // Init animation InitVisuals(); + // Update stats directory to currently specified one + if (CheckBoxWriteStatistics.IsChecked == true && Directory.Exists(TextStatisicsOutputFolder.Text)) + _instance.SettingConfig.StatisticsDirectory = TextStatisicsOutputFolder.Text; // Execute the simulation _renderer = new SimulationVisualizer(_instance, _animationControl2D, _animationControl3D, _infoControl, GetDrawMode3D, SetUpdaterate, GetUpdaterate(), UpdateSimulationTime, LogLine, StopExecution); _renderer.VisualizeSimulation(_instance.SettingConfig.SimulationWarmupTime + _instance.SettingConfig.SimulationDuration);