Index: dam clients/DamUI/trunk/src/Dam/Tests/DamEngineIo/ConversionHelperTests.cs =================================================================== diff -u -r482 -r483 --- dam clients/DamUI/trunk/src/Dam/Tests/DamEngineIo/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 482) +++ dam clients/DamUI/trunk/src/Dam/Tests/DamEngineIo/ConversionHelperTests.cs (.../ConversionHelperTests.cs) (revision 483) @@ -79,5 +79,52 @@ Assert.AreEqual(inputIntrusionVerticalWaterPressureType, ConversionHelper.ConvertToInputIntrusionVerticalWaterPressure(intrusionVerticalWaterPressureType)); } + [Test] + [TestCase(ConversionHelper.CpNone, CharacteristicPointType.None)] + [TestCase(ConversionHelper.CpSurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside)] + [TestCase(ConversionHelper.CpDikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver)] + [TestCase(ConversionHelper.CpShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside)] + [TestCase(ConversionHelper.CpShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside)] + [TestCase(ConversionHelper.CpDikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver)] + [TestCase(ConversionHelper.CpDikeLine, CharacteristicPointType.DikeLine)] + [TestCase(ConversionHelper.CpTrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside)] + [TestCase(ConversionHelper.CpTrafficLoadInside, CharacteristicPointType.TrafficLoadInside)] + [TestCase(ConversionHelper.CpDikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder)] + [TestCase(ConversionHelper.CpShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside)] + [TestCase(ConversionHelper.CpShoulderTopInside, CharacteristicPointType.ShoulderTopInside)] + [TestCase(ConversionHelper.CpDikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder)] + [TestCase(ConversionHelper.CpDitchDikeSide, CharacteristicPointType.DitchDikeSide)] + [TestCase(ConversionHelper.CpBottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide)] + [TestCase(ConversionHelper.CpBottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide)] + [TestCase(ConversionHelper.CpDitchPolderSide, CharacteristicPointType.DitchPolderSide)] + [TestCase(ConversionHelper.CpSurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside)] + public void CanConvertToCharacteristicPointType(int inputPointType, CharacteristicPointType characteristicPointType) + { + Assert.AreEqual(characteristicPointType, ConversionHelper.ConvertToDamPointType(inputPointType)); + } + + [Test] + [TestCase(CharacteristicPointType.None, ConversionHelper.CpNone)] + [TestCase(CharacteristicPointType.SurfaceLevelOutside, ConversionHelper.CpSurfaceLevelOutside)] + [TestCase(CharacteristicPointType.DikeToeAtRiver, ConversionHelper.CpDikeToeAtRiver)] + [TestCase(CharacteristicPointType.ShoulderTopOutside, ConversionHelper.CpShoulderTopOutside)] + [TestCase(CharacteristicPointType.ShoulderBaseOutside, ConversionHelper.CpShoulderBaseOutside)] + [TestCase(CharacteristicPointType.DikeTopAtRiver, ConversionHelper.CpDikeTopAtRiver)] + [TestCase(CharacteristicPointType.DikeLine, ConversionHelper.CpDikeLine)] + [TestCase(CharacteristicPointType.TrafficLoadOutside, ConversionHelper.CpTrafficLoadOutside)] + [TestCase(CharacteristicPointType.TrafficLoadInside, ConversionHelper.CpTrafficLoadInside)] + [TestCase(CharacteristicPointType.DikeTopAtPolder, ConversionHelper.CpDikeTopAtPolder)] + [TestCase(CharacteristicPointType.ShoulderBaseInside, ConversionHelper.CpShoulderBaseInside)] + [TestCase(CharacteristicPointType.ShoulderTopInside, ConversionHelper.CpShoulderTopInside)] + [TestCase(CharacteristicPointType.DikeToeAtPolder, ConversionHelper.CpDikeToeAtPolder)] + [TestCase(CharacteristicPointType.DitchDikeSide, ConversionHelper.CpDitchDikeSide)] + [TestCase(CharacteristicPointType.BottomDitchDikeSide, ConversionHelper.CpBottomDitchDikeSide)] + [TestCase(CharacteristicPointType.BottomDitchPolderSide, ConversionHelper.CpBottomDitchPolderSide)] + [TestCase(CharacteristicPointType.DitchPolderSide, ConversionHelper.CpDitchPolderSide)] + [TestCase(CharacteristicPointType.SurfaceLevelInside, ConversionHelper.CpSurfaceLevelInside)] + public void CanConvertToInputPointType(CharacteristicPointType characteristicPointType, int inputPointType) + { + Assert.AreEqual(inputPointType, ConversionHelper.ConvertToInputPointType(characteristicPointType)); + } } } Index: dam clients/DamUI/trunk/src/Dam/Data/DamEngineIo/ConversionHelper.cs =================================================================== diff -u -r458 -r483 --- dam clients/DamUI/trunk/src/Dam/Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 458) +++ dam clients/DamUI/trunk/src/Dam/Data/DamEngineIo/ConversionHelper.cs (.../ConversionHelper.cs) (revision 483) @@ -1,5 +1,6 @@ using System.Collections.Generic; using Deltares.DamEngine.Io.XmlInput; +using Deltares.Geotechnics.SurfaceLines; namespace Deltares.Dam.Data.DamEngineIo { @@ -117,5 +118,73 @@ }; return translationTable[inputIntrusionVerticalWaterPressure]; } + public const int CpNone = 0;// + public const int CpSurfaceLevelOutside = 1; // Maaiveld buitenwaarts + public const int CpDikeToeAtRiver = 5; // Teen dijk buitenwaarts + public const int CpShoulderTopOutside = 6; // Kruin buitenberm + public const int CpShoulderBaseOutside = 7; // Insteek buitenberm + public const int CpDikeTopAtRiver = 8; // Kruin buitentalud + public const int CpDikeLine = 9; // referentielijn + public const int CpTrafficLoadOutside = 10; // Verkeersbelasting kant buitenwaarts + public const int CpTrafficLoadInside = 11; // Verkeersbelasting kant binnenwaarts + public const int CpDikeTopAtPolder = 12; // Kruin binnentalud + public const int CpShoulderBaseInside = 13; // Insteek binnenberm + public const int CpShoulderTopInside = 14; // Kruin binnenberm + public const int CpDikeToeAtPolder = 15; // Teen dijk binnenwaarts + public const int CpDitchDikeSide = 16; // Insteek sloot dijkzijde + public const int CpBottomDitchDikeSide = 17; // Slootbodem dijkzijde + public const int CpBottomDitchPolderSide = 18; // Slootbodem polderzijde + public const int CpDitchPolderSide = 19; // Insteek sloot polderzijde + public const int CpSurfaceLevelInside = 25; // Maaiveld binnenwaarts + public static CharacteristicPointType ConvertToDamPointType(int inputPointType) + { + var translationTable = new Dictionary() + { + {CpNone, CharacteristicPointType.None}, + {CpSurfaceLevelOutside, CharacteristicPointType.SurfaceLevelOutside}, + {CpDikeToeAtRiver, CharacteristicPointType.DikeToeAtRiver}, + {CpShoulderTopOutside, CharacteristicPointType.ShoulderTopOutside}, + {CpShoulderBaseOutside, CharacteristicPointType.ShoulderBaseOutside}, + {CpDikeTopAtRiver, CharacteristicPointType.DikeTopAtRiver}, + {CpDikeLine, CharacteristicPointType.DikeLine}, + {CpTrafficLoadOutside, CharacteristicPointType.TrafficLoadOutside}, + {CpTrafficLoadInside, CharacteristicPointType.TrafficLoadInside}, + {CpDikeTopAtPolder, CharacteristicPointType.DikeTopAtPolder}, + {CpShoulderBaseInside, CharacteristicPointType.ShoulderBaseInside}, + {CpShoulderTopInside, CharacteristicPointType.ShoulderTopInside}, + {CpDikeToeAtPolder, CharacteristicPointType.DikeToeAtPolder}, + {CpDitchDikeSide, CharacteristicPointType.DitchDikeSide}, + {CpBottomDitchDikeSide, CharacteristicPointType.BottomDitchDikeSide}, + {CpBottomDitchPolderSide, CharacteristicPointType.BottomDitchPolderSide}, + {CpDitchPolderSide, CharacteristicPointType.DitchPolderSide}, + {CpSurfaceLevelInside, CharacteristicPointType.SurfaceLevelInside} + }; + return translationTable[inputPointType]; + } + public static int ConvertToInputPointType(CharacteristicPointType characteristicPointType) + { + var translationTable = new Dictionary() + { + {CharacteristicPointType.None, CpNone}, + {CharacteristicPointType.SurfaceLevelOutside, CpSurfaceLevelOutside}, + {CharacteristicPointType.DikeToeAtRiver, CpDikeToeAtRiver}, + {CharacteristicPointType.ShoulderTopOutside, CpShoulderTopOutside}, + {CharacteristicPointType.ShoulderBaseOutside, CpShoulderBaseOutside}, + {CharacteristicPointType.DikeTopAtRiver, CpDikeTopAtRiver}, + {CharacteristicPointType.DikeLine, CpDikeLine}, + {CharacteristicPointType.TrafficLoadOutside, CpTrafficLoadOutside}, + {CharacteristicPointType.TrafficLoadInside, CpTrafficLoadInside}, + {CharacteristicPointType.DikeTopAtPolder, CpDikeTopAtPolder}, + {CharacteristicPointType.ShoulderBaseInside, CpShoulderBaseInside}, + {CharacteristicPointType.ShoulderTopInside, CpShoulderTopInside}, + {CharacteristicPointType.DikeToeAtPolder, CpDikeToeAtPolder}, + {CharacteristicPointType.DitchDikeSide, CpDitchDikeSide}, + {CharacteristicPointType.BottomDitchDikeSide, CpBottomDitchDikeSide}, + {CharacteristicPointType.BottomDitchPolderSide, CpBottomDitchPolderSide}, + {CharacteristicPointType.DitchPolderSide, CpDitchPolderSide}, + {CharacteristicPointType.SurfaceLevelInside, CpSurfaceLevelInside} + }; + return translationTable[characteristicPointType]; + } } }