Index: DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs =================================================================== diff -u -r1168 -r1190 --- DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 1168) +++ DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/FillXmlInputFromDamUiTests.cs (.../FillXmlInputFromDamUiTests.cs) (revision 1190) @@ -173,6 +173,7 @@ soil.OCR = 25 + 0.1 * i; soil.RestSlope = 26 + 0.1 * i; soil.DilatancyType = DilatancyType.MinusPhi; + soil.SoilType = ConversionHelper.ConvertToSoilType(i); dike.SoilList.Add(soil); } Index: DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/ConversionHelperTests.cs =================================================================== diff -u -r1159 -r1190 --- DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 1159) +++ DamClients/DamUI/trunk/src/Dam/Tests/DamEngineIo/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 1190) @@ -385,26 +385,27 @@ { Assert.AreEqual(inputStabilityDesignMethod, ConversionHelper.ConvertToInputStabilityDesignMethod(stabilityDesignMethod)); } + [Test] - [TestCase(SoilType.Clay, LocationAssesmentRegionalOptionsDikeMaterialType.Clay)] - [TestCase(SoilType.Gravel, LocationAssesmentRegionalOptionsDikeMaterialType.Gravel)] - [TestCase(SoilType.Loam, LocationAssesmentRegionalOptionsDikeMaterialType.Loam)] - [TestCase(SoilType.Peat, LocationAssesmentRegionalOptionsDikeMaterialType.Peat)] - [TestCase(SoilType.Sand, LocationAssesmentRegionalOptionsDikeMaterialType.Sand)] - public void CanConvertToSoilType(LocationAssesmentRegionalOptionsDikeMaterialType dikeMaterialType, SoilType soilType) + [TestCase(ConversionHelper.SoilTypeClay, SoilType.Clay)] + [TestCase(ConversionHelper.SoilTypeGravel, SoilType.Gravel)] + [TestCase(ConversionHelper.SoilTypeLoam, SoilType.Loam)] + [TestCase(ConversionHelper.SoilTypePeat, SoilType.Peat)] + [TestCase(ConversionHelper.SoilTypeSand, SoilType.Sand)] + public void CanConvertToSoilType(int dikeSoilType, SoilType soilType) { - Assert.AreEqual(soilType, ConversionHelper.ConvertToSoilType(dikeMaterialType)); + Assert.AreEqual(soilType, ConversionHelper.ConvertToSoilType(dikeSoilType)); } [Test] - [TestCase(LocationAssesmentRegionalOptionsDikeMaterialType.Clay, SoilType.Clay)] - [TestCase(LocationAssesmentRegionalOptionsDikeMaterialType.Gravel, SoilType.Gravel)] - [TestCase(LocationAssesmentRegionalOptionsDikeMaterialType.Loam, SoilType.Loam)] - [TestCase(LocationAssesmentRegionalOptionsDikeMaterialType.Peat, SoilType.Peat)] - [TestCase(LocationAssesmentRegionalOptionsDikeMaterialType.Sand, SoilType.Sand)] - public void CanConvertToDikeMaterialType(SoilType soilType, LocationAssesmentRegionalOptionsDikeMaterialType dikeMaterialType) + [TestCase(SoilType.Clay, ConversionHelper.SoilTypeClay)] + [TestCase(SoilType.Gravel, ConversionHelper.SoilTypeGravel)] + [TestCase(SoilType.Loam, ConversionHelper.SoilTypeLoam)] + [TestCase(SoilType.Peat, ConversionHelper.SoilTypePeat)] + [TestCase(SoilType.Sand, ConversionHelper.SoilTypeSand)] + public void CanConvertToDikeMaterialType(SoilType soilType, int dikeSoilType) { - Assert.AreEqual(dikeMaterialType, ConversionHelper.ConvertToInputSoilType(soilType)); + Assert.AreEqual(dikeSoilType, ConversionHelper.ConvertToInputSoilType(soilType)); } } } Index: DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/ConversionHelper.cs =================================================================== diff -u -r1180 -r1190 --- DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 1180) +++ DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 1190) @@ -818,20 +818,26 @@ return translationTable[stabilityDesignMethod]; } + public const int SoilTypeClay = 0; + public const int SoilTypeGravel = 1; + public const int SoilTypeLoam = 2; + public const int SoilTypePeat = 3; + public const int SoilTypeSand = 4; + /// /// Converts the input dikeMaterialType to SoilType. /// /// Type of the dike material. /// - public static SoilType ConvertToSoilType(LocationAssesmentRegionalOptionsDikeMaterialType dikeMaterialType) + public static SoilType ConvertToSoilType(int dikeMaterialType) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {LocationAssesmentRegionalOptionsDikeMaterialType.Clay, SoilType.Clay}, - {LocationAssesmentRegionalOptionsDikeMaterialType.Gravel, SoilType.Gravel}, - {LocationAssesmentRegionalOptionsDikeMaterialType.Loam, SoilType.Loam}, - {LocationAssesmentRegionalOptionsDikeMaterialType.Peat, SoilType.Peat}, - {LocationAssesmentRegionalOptionsDikeMaterialType.Sand, SoilType.Sand} + {SoilTypeClay, SoilType.Clay}, + {SoilTypeGravel, SoilType.Gravel}, + {SoilTypeLoam, SoilType.Loam}, + {SoilTypePeat, SoilType.Peat}, + {SoilTypeSand, SoilType.Sand} }; return translationTable[dikeMaterialType]; } @@ -841,15 +847,15 @@ /// /// Type of the soil. /// - public static LocationAssesmentRegionalOptionsDikeMaterialType ConvertToInputSoilType(SoilType soilType) + public static int ConvertToInputSoilType(SoilType soilType) { - var translationTable = new Dictionary() + var translationTable = new Dictionary() { - {SoilType.Clay, LocationAssesmentRegionalOptionsDikeMaterialType.Clay}, - {SoilType.Gravel, LocationAssesmentRegionalOptionsDikeMaterialType.Gravel}, - {SoilType.Loam, LocationAssesmentRegionalOptionsDikeMaterialType.Loam}, - {SoilType.Peat, LocationAssesmentRegionalOptionsDikeMaterialType.Peat}, - {SoilType.Sand, LocationAssesmentRegionalOptionsDikeMaterialType.Sand} + {SoilType.Clay, SoilTypeClay}, + {SoilType.Gravel, SoilTypeGravel}, + {SoilType.Loam, SoilTypeLoam}, + {SoilType.Peat, SoilTypePeat}, + {SoilType.Sand, SoilTypeSand} }; return translationTable[soilType]; } Index: DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillXmlInputFromDamUi.cs =================================================================== diff -u -r1177 -r1190 --- DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 1177) +++ DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillXmlInputFromDamUi.cs (.../FillXmlInputFromDamUi.cs) (revision 1190) @@ -283,6 +283,8 @@ inputSoil.SlopeRestProfile = soil.RestSlope; inputSoil.DilatancyTypeSpecified = true; inputSoil.DilatancyType = ConversionHelper.ConvertToSoilDilatancyType(soil.DilatancyType); + inputSoil.SoilType = ConversionHelper.ConvertToInputSoilType(soil.SoilType); + inputSoil.SoilTypeSpecified = true; inputSoils[i] = inputSoil; } } @@ -359,7 +361,8 @@ assesmentRegionalOptions.RegionalBankProtectionBottomLevel = location.RwBankProtectionBottomLevel; assesmentRegionalOptions.DredgingDepth = location.DredgingDepth; assesmentRegionalOptions.DetrimentFactor = location.DetrimentFactor; - assesmentRegionalOptions.DikeMaterialType = ConversionHelper.ConvertToInputSoilType(location.DikeMaterialType); + assesmentRegionalOptions.DikeSoilType = ConversionHelper.ConvertToInputSoilType(location.DikeMaterialType); + assesmentRegionalOptions.DikeSoilTypeSpecified = true; inputLocation.AssesmentRegionalOptions = assesmentRegionalOptions; inputLocation.DesignScenarios = new LocationDesignScenario[location.Scenarios.Count]; Index: DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillDamUiFromXmlInput.cs =================================================================== diff -u -r1168 -r1190 --- DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 1168) +++ DamClients/DamUI/trunk/src/Dam/Data/DamEngineIo/FillDamUiFromXmlInput.cs (.../FillDamUiFromXmlInput.cs) (revision 1190) @@ -247,6 +247,8 @@ soil.RestSlope = inputSoil.SlopeRestProfileSpecified ? inputSoil.SlopeRestProfile : Double.NaN; soil.DilatancyType = inputSoil.DilatancyTypeSpecified ? ConversionHelper.ConvertToDilatancyType(inputSoil.DilatancyType) : DilatancyType.Phi; + soil.SoilType = inputSoil.SoilTypeSpecified ? ConversionHelper.ConvertToSoilType(inputSoil.SoilType) : SoilType.Clay; + inputSoil.SoilTypeSpecified = true; soils.Add(soil); } } @@ -300,7 +302,9 @@ location.RwBankProtectionBottomLevel = assesmentRegionalOptions.RegionalBankProtectionBottomLevel; location.DredgingDepth = assesmentRegionalOptions.DredgingDepth; location.DetrimentFactor = assesmentRegionalOptions.DetrimentFactor; - location.DikeMaterialType = ConversionHelper.ConvertToSoilType(assesmentRegionalOptions.DikeMaterialType); + location.DikeMaterialType = assesmentRegionalOptions.DikeSoilTypeSpecified ? + ConversionHelper.ConvertToSoilType(assesmentRegionalOptions.DikeSoilType) : + SoilType.Clay; SurfaceLine2 surfaceLine = dikeSurfaceLines.First(n => n.Name.Equals(inputLocation.SurfaceLineName)); location.LocalXZSurfaceLine2 = surfaceLine;