Geometriedaten werden geladen
This commit is contained in:
@@ -63,7 +63,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
inspektionsdaten = src.Item2;
|
||||
foreach (InspizierteAbwassertechnischeAnlage iat in inspektionsdaten)
|
||||
{
|
||||
AbwassertechnischeAnlage stammdatens = stammdaten.Find(x => x.Objektbezeichnung.Equals(iat.Objektbezeichnung));//;
|
||||
AbwassertechnischeAnlage stammdatens = stammdaten.Find(x => x.Objektbezeichnung.Equals(iat.Objektbezeichnung) && x.ObjektArt.Equals(EObjektArt.KANTE));//;
|
||||
string[] filepathsplited = this.XmlFile.Split(Path.DirectorySeparatorChar);
|
||||
|
||||
KanalObjekte.Add(new KanalObjekt()
|
||||
@@ -314,7 +314,6 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
ICodeBeschreibung codedescription = factory.GetCodeBeschreibung(rZustand);
|
||||
|
||||
rZustand.KodeDescription = codedescription.GetBeschreibung;
|
||||
//Console.WriteLine(rZustand.KodeDescription);
|
||||
result.Add(rZustand);
|
||||
}
|
||||
|
||||
@@ -473,7 +472,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
case "Knoten": result.Knoten = parseStammdatenKnoten(aktuell); break;
|
||||
case "Kante":
|
||||
result.Kante = parseKante(aktuell);
|
||||
QueueToRebuild.Enqueue(result);
|
||||
//QueueToRebuild.Enqueue(result);
|
||||
break;
|
||||
case "Lage":
|
||||
break;
|
||||
@@ -522,7 +521,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
result.Knoten = parseGeometrieKnoten(s);
|
||||
break;
|
||||
case "Kanten":
|
||||
parseGeometrieKanten(s);
|
||||
result.Kanten = parseGeometrieKanten(s);
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
@@ -531,49 +530,55 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
return result;
|
||||
}
|
||||
|
||||
private void parseGeometrieKanten(XmlNode aktuel)
|
||||
private List<PolyKante> parseGeometrieKanten(XmlNode aktuel)
|
||||
{
|
||||
List<PolyKante> result = new List<PolyKante>();
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Kante":
|
||||
parseGeometrieKante(s);
|
||||
result.Add(parseGeometrieKante(s));
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private void parseGeometrieKante(XmlNode aktuel)
|
||||
private PolyKante parseGeometrieKante(XmlNode aktuel)
|
||||
{
|
||||
PolyKante result = new PolyKante();
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Start":
|
||||
parseGeometrieKanteStartEnde(s);
|
||||
result.Start = parseGeometrieKanteStartEnde(s);
|
||||
break;
|
||||
case "Ende":
|
||||
parseGeometrieKanteStartEnde(s);
|
||||
result.Ende = parseGeometrieKanteStartEnde(s);
|
||||
break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
private void parseGeometrieKanteStartEnde(XmlNode aktuel)
|
||||
private PolyKanteAttribute parseGeometrieKanteStartEnde(XmlNode aktuel)
|
||||
{
|
||||
PolyKanteAttribute result = new PolyKanteAttribute();
|
||||
foreach (XmlNode s in aktuel.ChildNodes)
|
||||
{
|
||||
switch (s.Name)
|
||||
{
|
||||
case "Rechtswert": break;
|
||||
case "Hochwert": break;
|
||||
case "Punkthoehe": break;
|
||||
case "PunktattributAbwasser": break;
|
||||
case "Rechtswert": result.Rechtswert = Convert.ToDecimal(s.InnerText.Replace('.', ',')); break;
|
||||
case "Hochwert": result.Hochwert = Convert.ToDecimal(s.InnerText.Replace('.', ',')); break;
|
||||
case "Punkthoehe": result.Punkthoehe = Convert.ToDecimal(s.InnerText.Replace('.', ',')); break;
|
||||
case "PunktattributAbwasser": result.PunktattributAbwasser = s.InnerText; break;
|
||||
default: throw new NotImplementedException(s.Name);
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
private Geometriedatenknoten parseGeometrieKnoten(XmlNode aktuel)
|
||||
@@ -650,7 +655,7 @@ namespace Schnittstelle.Import.XML.v2013
|
||||
result.SohlhoeheAblauf = Convert.ToDecimal(s.InnerText.Replace('.',','));
|
||||
break;
|
||||
case "Laenge":
|
||||
result.Laenge = Convert.ToDecimal(s.InnerText);
|
||||
result.Laenge = Convert.ToDecimal(s.InnerText.Replace('.',','));
|
||||
break;
|
||||
case "Material":
|
||||
result.Material = s.InnerText;
|
||||
|
||||
Reference in New Issue
Block a user