Index: dam clients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillDamUiFromXmlInput.cs =================================================================== diff -u -r484 -r491 --- dam clients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 484) +++ dam clients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 491) @@ -1,8 +1,11 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using Deltares.DamEngine.Io.XmlInput; using Deltares.Geometry; using Deltares.Geotechnics.GeotechnicalGeometry; +using Deltares.Geotechnics.Soils; using Deltares.Geotechnics.SurfaceLines; +using Soil = Deltares.Geotechnics.Soils.Soil; using SurfaceLine = Deltares.DamEngine.Io.XmlInput.SurfaceLine; namespace Deltares.Dam.Data.DamEngineIo @@ -28,9 +31,28 @@ Dike dike = damProjectData.WaterBoard.Dikes[0]; TransferLocations(input, dike); TransferSurfaceLines(input, dike); + TransferSoils(input, dike); return damProjectData; } + private static void TransferSoils(Input input, Dike dike) + { + dike.SoilList = new SoilList(); + var soils = dike.SoilList.Soils; + for (int i = 0; i < input.Soils.Length; i++) + { + var soil = new Soil(); + var inputSoil = input.Soils[i]; + soil.Name = inputSoil.Name; + soil.BeddingAngle = inputSoil.BeddingAngleSpecified ? inputSoil.BeddingAngle : Double.NaN; + soil.DiameterD70 = inputSoil.DiameterD70Specified ? inputSoil.DiameterD70 : Double.NaN; + soil.DiameterD90 = inputSoil.DiameterD90Specified ? inputSoil.DiameterD90 : Double.NaN; + soil.PermeabKx = inputSoil.PermeabKxSpecified ? inputSoil.PermeabKx : Double.NaN; + soil.WhitesConstant = inputSoil.WhitesConstantSpecified ? inputSoil.WhitesConstant : Double.NaN; + soils.Add(soil); + } + } + private static void TransferSurfaceLines(Input input, Dike dike) { for (int i = 0; i < input.SurfaceLines.Length; i++)