Index: dam engine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs =================================================================== diff -u -r461 -r470 --- dam engine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs (.../FillDamFromXmlInputTests.cs) (revision 461) +++ dam engine/trunk/src/Deltares.DamEngine.Interface.Tests/FillDamFromXmlInputTests.cs (.../FillDamFromXmlInputTests.cs) (revision 470) @@ -55,10 +55,17 @@ } private DamProjectData CreateExampleDamProjectData() { - const int locationCount = 3; var damProjectData = new DamProjectData(); damProjectData.DamProjectType = DamProjectType.Design; damProjectData.Dike = new Dike(); + Dike dike = damProjectData.Dike; + FillLocations(dike); + return damProjectData; + } + + private static void FillLocations(Dike dike) + { + const int locationCount = 3; for (int i = 0; i < locationCount; i++) { var location = new Data.General.Location(); @@ -76,15 +83,14 @@ location.PlLineOffsetDryFactorBelowShoulderCrest = 1.0 * i + 0.18; location.SlopeDampingPiezometricHeightPolderSide = 1.0 * i + 0.19; location.PlLineOffsetBelowDikeTopAtRiver = 1.0 * i + 0.20; - location.PlLineOffsetBelowDikeTopAtPolder = 1.0 * i + 0.21; + location.PlLineOffsetBelowDikeTopAtPolder = 1.0 * i + 0.21; location.PlLineOffsetBelowShoulderBaseInside = 1.0 * i + 0.22; location.PlLineOffsetBelowDikeToeAtPolder = 1.0 * i + 0.23; location.HeadPl2 = 1.0 * i + 0.24; location.HeadPl3 = 1.0 * i + 0.25; location.HeadPl4 = 1.0 * i + 0.21; - damProjectData.Dike.Locations.Add(location); + dike.Locations.Add(location); } - return damProjectData; } private void CompareDamProjectData(DamProjectData actual, DamProjectData expected) Index: dam engine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs =================================================================== diff -u -r452 -r470 --- dam engine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs (.../FillDamFromXmlInput.cs) (revision 452) +++ dam engine/trunk/src/Deltares.DamEngine.Interface/FillDamFromXmlInput.cs (.../FillDamFromXmlInput.cs) (revision 470) @@ -36,6 +36,14 @@ damProjectData.DamProjectType = ConversionHelper.ConvertToDamProjectType(input.DamProjectType); damProjectData.Dike = new Dike(); + Dike dike = damProjectData.Dike; + TransferLocations(input, dike); + + return damProjectData; + } + + private static void TransferLocations(Input input, Dike dike) + { for (int i = 0; i < input.Locations.Length; i++) { var location = new Location(); @@ -53,18 +61,16 @@ location.PlLineOffsetDryBelowDikeCrestMiddle = (waternetOptions.DryPl1BelowCrestMiddleSpecified ? (double?) waternetOptions.DryPl1BelowCrestMiddle : null); location.UsePlLineOffsetDryFactorBelowShoulderCrest = waternetOptions.DryPl1FactorBelowShoulderCrestSpecified; location.PlLineOffsetDryFactorBelowShoulderCrest = waternetOptions.DryPl1FactorBelowShoulderCrest; - location.HeadPl2 = (waternetOptions.HeadPl2Specified ? (double?)waternetOptions.HeadPl2 : null); - location.HeadPl3 = (waternetOptions.HeadPl3Specified ? (double?)waternetOptions.HeadPl3 : null); - location.HeadPl4 = (waternetOptions.HeadPl4Specified ? (double?)waternetOptions.HeadPl4 : null); + location.HeadPl2 = (waternetOptions.HeadPl2Specified ? (double?) waternetOptions.HeadPl2 : null); + location.HeadPl3 = (waternetOptions.HeadPl3Specified ? (double?) waternetOptions.HeadPl3 : null); + location.HeadPl4 = (waternetOptions.HeadPl4Specified ? (double?) waternetOptions.HeadPl4 : null); location.SlopeDampingPiezometricHeightPolderSide = waternetOptions.SlopeDampingFactor; location.PlLineOffsetBelowDikeTopAtRiver = waternetOptions.Pl1BelowCrestRiverside; location.PlLineOffsetBelowDikeTopAtPolder = waternetOptions.Pl1BelowCrestPolderside; location.PlLineOffsetBelowShoulderBaseInside = waternetOptions.Pl1BelowShoulderCrestPolderside; location.PlLineOffsetBelowDikeToeAtPolder = waternetOptions.Pl1BelowToeDikePolderside; - damProjectData.Dike.Locations.Add(location); + dike.Locations.Add(location); } - return damProjectData; } - } }