Index: Ringtoets/Piping/src/Ringtoets.Piping.Forms/Views/PipingChartDataFactory.cs =================================================================== diff -u -r41185195682bf4c3afa93edd81af55d2ba67cba9 -rc8efe348672fe0ebd3da53f2861c67dce25396f6 --- Ringtoets/Piping/src/Ringtoets.Piping.Forms/Views/PipingChartDataFactory.cs (.../PipingChartDataFactory.cs) (revision 41185195682bf4c3afa93edd81af55d2ba67cba9) +++ Ringtoets/Piping/src/Ringtoets.Piping.Forms/Views/PipingChartDataFactory.cs (.../PipingChartDataFactory.cs) (revision c8efe348672fe0ebd3da53f2861c67dce25396f6) @@ -23,9 +23,12 @@ using System.Drawing; using System.Drawing.Drawing2D; using System.Linq; +using Core.Common.Base.Data; using Core.Common.Base.Geometry; using Core.Components.Charting.Data; using Core.Components.Charting.Styles; +using Ringtoets.Piping.Data; +using Ringtoets.Piping.Forms.Properties; using Ringtoets.Piping.Primitives; namespace Ringtoets.Piping.Forms.Views @@ -46,9 +49,19 @@ } /// + /// Create a instance with a name, but without data. + /// + /// The name of the . + /// An empty object. + public static ChartPointData CreateEmptyPointData(string name) + { + return new ChartPointData(Enumerable.Empty(), name); + } + + /// /// Create with default styling based on the . /// - /// The for which to create / + /// The for which to create . /// based on the . /// Thrown when is null. public static ChartData Create(RingtoetsPipingSurfaceLine surfaceLine) @@ -63,5 +76,34 @@ Style = new ChartLineStyle(Color.SaddleBrown, 2, DashStyle.Solid) }; } + + /// + /// Create a with default styling based on the . + /// + /// The entry point for which to create . + /// The to get place the entry point on. + /// based on the . + /// Thrown when is NaN. + /// Thrown when is null. + public static ChartData CreateEntryPoint(RoundedDouble entryPoint, RingtoetsPipingSurfaceLine surfaceLine) + { + if (double.IsNaN(entryPoint)) + { + throw new ArgumentException("Entry point should have a value.", "entryPoint"); + } + + if (surfaceLine == null) + { + throw new ArgumentNullException("surfaceLine"); + } + + return new ChartPointData(new[] + { + new Point2D(entryPoint, surfaceLine.GetZAtL(entryPoint)), + }, Resources.PipingInput_EntryPointL_DisplayName) + { + Style = new ChartPointStyle(Color.Blue, 8, Color.Gray, 2, ChartPointSymbol.Triangle) + }; + } } } \ No newline at end of file