Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/DamMStabDoc.cs
===================================================================
diff -u -r3141 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/DamMStabDoc.cs (.../DamMStabDoc.cs) (revision 3141)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/DamMStabDoc.cs (.../DamMStabDoc.cs) (revision 3150)
@@ -412,19 +412,19 @@
[System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=true)]
public partial class tnsbPrefixTrafficLoad {
- private string xCoordinateAtRiverField;
+ private double xCoordinateAtRiverField;
- private string xCoordinateAtPolderField;
+ private double xCoordinateAtPolderField;
- private string loadField;
+ private double loadField;
- private string degreeOfConsolidationSpecified1Field;
+ private bool degreeOfConsolidationSpecified1Field;
- private string degreeOfConsolidationField;
+ private double degreeOfConsolidationField;
///
[System.Xml.Serialization.XmlAttributeAttribute()]
- public string XCoordinateAtRiver {
+ public double XCoordinateAtRiver {
get {
return this.xCoordinateAtRiverField;
}
@@ -435,7 +435,7 @@
///
[System.Xml.Serialization.XmlAttributeAttribute()]
- public string XCoordinateAtPolder {
+ public double XCoordinateAtPolder {
get {
return this.xCoordinateAtPolderField;
}
@@ -446,7 +446,7 @@
///
[System.Xml.Serialization.XmlAttributeAttribute()]
- public string Load {
+ public double Load {
get {
return this.loadField;
}
@@ -457,7 +457,7 @@
///
[System.Xml.Serialization.XmlAttributeAttribute("DegreeOfConsolidationSpecified")]
- public string DegreeOfConsolidationSpecified1 {
+ public bool DegreeOfConsolidationSpecified1 {
get {
return this.degreeOfConsolidationSpecified1Field;
}
@@ -468,7 +468,7 @@
///
[System.Xml.Serialization.XmlAttributeAttribute()]
- public string DegreeOfConsolidation {
+ public double DegreeOfConsolidation {
get {
return this.degreeOfConsolidationField;
}
@@ -487,13 +487,13 @@
[System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=true)]
public partial class tnsbPrefixCalculationOptions {
- private string minimalCircleDepthField;
+ private double minimalCircleDepthField;
- private string zonesTypeField;
+ private ZonesType zonesTypeField;
///
[System.Xml.Serialization.XmlAttributeAttribute()]
- public string MinimalCircleDepth {
+ public double MinimalCircleDepth {
get {
return this.minimalCircleDepthField;
}
@@ -504,7 +504,7 @@
///
[System.Xml.Serialization.XmlAttributeAttribute()]
- public string ZonesType {
+ public ZonesType ZonesType {
get {
return this.zonesTypeField;
}
@@ -517,6 +517,21 @@
///
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.8.3928.0")]
[System.SerializableAttribute()]
+ public enum ZonesType {
+
+ ///
+ NoZones,
+
+ ///
+ ZoneAreas,
+
+ ///
+ ForbiddenZone,
+ }
+
+ ///
+ [System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.8.3928.0")]
+ [System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/FillIoDamMStabDocFromXml.cs
===================================================================
diff -u -r3146 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/FillIoDamMStabDocFromXml.cs (.../FillIoDamMStabDocFromXml.cs) (revision 3146)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/FillIoDamMStabDocFromXml.cs (.../FillIoDamMStabDocFromXml.cs) (revision 3150)
@@ -39,9 +39,26 @@
TransferSurfaceLine(xmlMStabDamDoc.tnsPrefixDamMStabInput.tnsbPrefixSurfaceLine, ioMStabDamDoc.MStabInput.SurfaceLine);
TransferCharacteristicPoints(xmlMStabDamDoc.tnsPrefixDamMStabInput.tnsbPrefixCharacteristicPoints, ioMStabDamDoc.MStabInput.CharacteristicPoints);
TransferPlLines(xmlMStabDamDoc.tnsPrefixDamMStabInput.tnsbPrefixExternalPLLines, ioMStabDamDoc.MStabInput.ExternalPlLines);
+ TransferCalculationOptions(xmlMStabDamDoc.tnsPrefixDamMStabInput.tnsbPrefixCalculationOptions, ioMStabDamDoc.MStabInput.CalculationOptions);
+ TransferTrafficLoad(xmlMStabDamDoc.tnsPrefixDamMStabInput.tnsbPrefixTrafficLoad, ioMStabDamDoc.MStabInput.TrafficLoad);
return ioMStabDamDoc;
}
+ private static void TransferTrafficLoad(tnsbPrefixTrafficLoad xmlTrafficLoad, IoTrafficLoad ioTrafficLoad)
+ {
+ ioTrafficLoad.XCoordinateAtPolder = xmlTrafficLoad.XCoordinateAtPolder;
+ ioTrafficLoad.DegreeOfConsolidationSpecified = xmlTrafficLoad.DegreeOfConsolidationSpecified1;
+ ioTrafficLoad.DegreeOfConsolidation = xmlTrafficLoad.DegreeOfConsolidation;
+ ioTrafficLoad.Load = xmlTrafficLoad.Load;
+ ioTrafficLoad.XCoordinateAtRiver = xmlTrafficLoad.XCoordinateAtRiver;
+ }
+
+ private static void TransferCalculationOptions(tnsbPrefixCalculationOptions xmlCalculationOptions, IoCalculationOptions ioCalculationOptions)
+ {
+ ioCalculationOptions.MinimalCircleDepth = xmlCalculationOptions.MinimalCircleDepth;
+ ioCalculationOptions.ZonesType = xmlCalculationOptions.ZonesType;
+ }
+
private static void TransferPlLines(tnsbPrefixExternalPLLinesTnsbPrefixPLLine[] xmlPlLines, List ioPlLines)
{
for (int plLineIndex = 0; plLineIndex < xmlPlLines.Length; plLineIndex++)
Index: DamTools/LayerOnSlopeTool/trunk/xsd/DamMStabDefinitions.xsd
===================================================================
diff -u -r3141 -r3150
--- DamTools/LayerOnSlopeTool/trunk/xsd/DamMStabDefinitions.xsd (.../DamMStabDefinitions.xsd) (revision 3141)
+++ DamTools/LayerOnSlopeTool/trunk/xsd/DamMStabDefinitions.xsd (.../DamMStabDefinitions.xsd) (revision 3150)
@@ -57,17 +57,17 @@
-
-
-
-
-
+
+
+
+
+
-
-
+
+
@@ -169,4 +169,11 @@
+
+
+
+
+
+
+
\ No newline at end of file
Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/FillXmlDamMStabDocFromIo.cs
===================================================================
diff -u -r3146 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/FillXmlDamMStabDocFromIo.cs (.../FillXmlDamMStabDocFromIo.cs) (revision 3146)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/FillXmlDamMStabDocFromIo.cs (.../FillXmlDamMStabDocFromIo.cs) (revision 3150)
@@ -56,9 +56,30 @@
new tnsbPrefixExternalPLLinesTnsbPrefixPLLine[ioMStabDamDoc.MStabInput.ExternalPlLines.Count];
TransferPlLines(ioMStabDamDoc.MStabInput.ExternalPlLines, xmlDamMStabDoc.tnsPrefixDamMStabInput.tnsbPrefixExternalPLLines);
+ xmlDamMStabDoc.tnsPrefixDamMStabInput.tnsbPrefixCalculationOptions = new tnsbPrefixCalculationOptions();
+ TransferCalculationOptions(ioMStabDamDoc.MStabInput.CalculationOptions, xmlDamMStabDoc.tnsPrefixDamMStabInput.tnsbPrefixCalculationOptions);
+
+ xmlDamMStabDoc.tnsPrefixDamMStabInput.tnsbPrefixTrafficLoad = new tnsbPrefixTrafficLoad();
+ TransferTrafficLoad(ioMStabDamDoc.MStabInput.TrafficLoad, xmlDamMStabDoc.tnsPrefixDamMStabInput.tnsbPrefixTrafficLoad);
+
return xmlDamMStabDoc;
}
+ private static void TransferTrafficLoad(IoTrafficLoad ioTrafficLoad, tnsbPrefixTrafficLoad xmlTrafficLoad)
+ {
+ xmlTrafficLoad.XCoordinateAtRiver = ioTrafficLoad.XCoordinateAtRiver;
+ xmlTrafficLoad.XCoordinateAtPolder = ioTrafficLoad.XCoordinateAtPolder;
+ xmlTrafficLoad.DegreeOfConsolidationSpecified1 = ioTrafficLoad.DegreeOfConsolidationSpecified;
+ xmlTrafficLoad.DegreeOfConsolidation = ioTrafficLoad.DegreeOfConsolidation;
+ xmlTrafficLoad.Load = ioTrafficLoad.Load;
+ }
+
+ private static void TransferCalculationOptions(IoCalculationOptions iocalculationOptions, tnsbPrefixCalculationOptions xmlCalculationOptions)
+ {
+ xmlCalculationOptions.MinimalCircleDepth = iocalculationOptions.MinimalCircleDepth;
+ xmlCalculationOptions.ZonesType = iocalculationOptions.ZonesType;
+ }
+
private static void TransferPlLines(List ioPlLines, tnsbPrefixExternalPLLinesTnsbPrefixPLLine[] xmlPlLines)
{
for (int plLineIndex = 0; plLineIndex < ioPlLines.Count; plLineIndex++)
Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/IoTrafficLoad.cs
===================================================================
diff -u -r3117 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/IoTrafficLoad.cs (.../IoTrafficLoad.cs) (revision 3117)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/IoTrafficLoad.cs (.../IoTrafficLoad.cs) (revision 3150)
@@ -21,8 +21,30 @@
namespace Deltares.LayerOnSlopeTool.Io
{
+ /// Traffic Load Type
public class IoTrafficLoad
{
-
+ /// Gets or sets the x coordinate at river.
+ /// The x coordinate at river.
+ public double XCoordinateAtRiver { get; set; }
+
+ /// Gets or sets the x coordinate at polder.
+ /// The x coordinate at polder.
+ public double XCoordinateAtPolder { get; set; }
+
+ /// Gets or sets the load.
+ /// The load.
+ public double Load { get; set; }
+
+ /// Gets or sets a value indicating whether [degree of consolidation specified].
+ ///
+ /// true if [degree of consolidation specified]; otherwise, false.
+ public bool DegreeOfConsolidationSpecified { get; set; }
+
+ /// Gets or sets the degree of consolidation.
+ /// The degree of consolidation.
+ public double DegreeOfConsolidation { get; set; }
+
+
}
}
\ No newline at end of file
Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io.Tests/IoDamMStabDocSeriliazerTests.cs
===================================================================
diff -u -r3146 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io.Tests/IoDamMStabDocSeriliazerTests.cs (.../IoDamMStabDocSeriliazerTests.cs) (revision 3146)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io.Tests/IoDamMStabDocSeriliazerTests.cs (.../IoDamMStabDocSeriliazerTests.cs) (revision 3150)
@@ -69,10 +69,27 @@
FillSurfaceLine(ioMStabDamDoc.MStabInput.SurfaceLine, xLeftBoundary, xRightBoundary);
FillCharacteristicPoints(ioMStabDamDoc.MStabInput.CharacteristicPoints, xLeftBoundary, xRightBoundary);
FillPlLines(ioMStabDamDoc.MStabInput.ExternalPlLines, xRightBoundary, xLeftBoundary, yDeep);
+ FillCalculationOptions(ioMStabDamDoc.MStabInput.CalculationOptions);
+ FillTrafficLoad(ioMStabDamDoc.MStabInput.TrafficLoad);
return ioMStabDamDoc;
}
+ private void FillTrafficLoad(IoTrafficLoad trafficLoad)
+ {
+ trafficLoad.XCoordinateAtRiver = 5.2;
+ trafficLoad.XCoordinateAtPolder = 5.7;
+ trafficLoad.DegreeOfConsolidationSpecified = true;
+ trafficLoad.DegreeOfConsolidation = 10.0;
+ trafficLoad.Load = 5.0;
+ }
+
+ private void FillCalculationOptions(IoCalculationOptions calculationOptions)
+ {
+ calculationOptions.MinimalCircleDepth = 0.75;
+ calculationOptions.ZonesType = ZonesType.ForbiddenZone;
+ }
+
private static void FillPlLines(List plLines, double xRightBoundary, double xLeftBoundary, double yDeep)
{
var pl1 = new IoPlLine();
Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.StiFileCreator/StiFileCreator.cs
===================================================================
diff -u -r3149 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.StiFileCreator/StiFileCreator.cs (.../StiFileCreator.cs) (revision 3149)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.StiFileCreator/StiFileCreator.cs (.../StiFileCreator.cs) (revision 3150)
@@ -45,7 +45,8 @@
int result = mStabDAMInterface.CreateProjectFile(xmlString);
if (result != 0)
{
- throw new Exception(String.Format("Error {0} in DGSMStabDamDll.CreateProjectFile()", result));
+ string errorMessage = mStabDAMInterface.ErrorMessage();
+ throw new Exception(String.Format("Error {0} in DGSMStabDamDll.CreateProjectFile(): '{1}'", result, errorMessage));
}
}
Index: DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/IoCalculationOptions.cs
===================================================================
diff -u -r3117 -r3150
--- DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/IoCalculationOptions.cs (.../IoCalculationOptions.cs) (revision 3117)
+++ DamTools/LayerOnSlopeTool/trunk/src/Deltares.LayerOnSlopeTool.Io/IoCalculationOptions.cs (.../IoCalculationOptions.cs) (revision 3150)
@@ -21,8 +21,15 @@
namespace Deltares.LayerOnSlopeTool.Io
{
+ /// Zones Type
public class IoCalculationOptions
{
-
+ /// Gets or sets the minimal circle depth.
+ /// The minimal circle depth.
+ public double MinimalCircleDepth { get; set; }
+
+ /// Gets or sets the type of the zones.
+ /// The type of the zones.
+ public ZonesType ZonesType { get; set; }
}
}
\ No newline at end of file