Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs =================================================================== diff -u -rc7c07db38829afdc5965c331844e1d39123944ff -rc046d22cfc010414d21bda8cc15806530e315ca3 --- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision c7c07db38829afdc5965c331844e1d39123944ff) +++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision c046d22cfc010414d21bda8cc15806530e315ca3) @@ -24,6 +24,7 @@ using System.Drawing; using System.Linq; using System.Windows.Forms; +using Core.Common.Base.Geometry; using Core.Common.Controls.TreeView; using Core.Common.Gui.ContextMenu; using Core.Common.Gui.Forms; @@ -728,6 +729,8 @@ GeneratePipingCalculations(nodeData.WrappedData, view.SelectedSurfaceLines, nodeData.AvailableStochasticSoilModels, nodeData.PipingFailureMechanism.GeneralInput, nodeData.PipingFailureMechanism.SemiProbabilisticInput); nodeData.NotifyObservers(); + + AddCalculationScenariosToFailureMechanismSectionResult(nodeData.WrappedData, nodeData.PipingFailureMechanism); } private void GeneratePipingCalculations(PipingCalculationGroup target, IEnumerable surfaceLines, IEnumerable soilModels, GeneralPipingInput generalInput, SemiProbabilisticPipingInput semiProbabilisticInput) @@ -738,6 +741,20 @@ } } + private void AddCalculationScenariosToFailureMechanismSectionResult(PipingCalculationGroup pipingCalculationGroup, PipingFailureMechanism pipingFailureMechanism) + { + foreach (var failureMechanismSectionResult in pipingFailureMechanism.SectionResults) + { + var lineSegments = Math2D.ConvertLinePointsToLineSegments(failureMechanismSectionResult.Section.Points); + var calculationScenarios = pipingCalculationGroup.GetPipingCalculations().Where(pc => PipingCalculationConfigurationHelper.IsSurfaceLineIntersectionWithReferenceLineInSection(pc.InputParameters.SurfaceLine, lineSegments)).ToList(); + + if (calculationScenarios.Any()) + { + failureMechanismSectionResult.CalculationScenarios.AddRange(calculationScenarios); + } + } + } + private StrictContextMenuItem CreateCalculateAllItem(PipingCalculationGroup group) { var menuItem = new StrictContextMenuItem(