internal override void ParseXml(XmlElement xml)
{
base.ParseXml(xml);
foreach (XmlNode child in xml.ChildNodes)
{
string name = child.Name;
if (string.Compare(name, "BasisSurface") == 0)
BasisSurface = mDatabase.ParseXml<IfcPlane>(child as XmlElement);
else if (string.Compare(name, "OuterBoundary") == 0)
OuterBoundary = mDatabase.ParseXml<IfcCurve>(child as XmlElement);
else if (string.Compare(name, "InnerBoundaries") == 0)
{
List<IfcCurve> inners = new List<IfcCurve>(child.ChildNodes.Count);
foreach (XmlNode cn in child.ChildNodes)
{
IfcCurve c = mDatabase.ParseXml<IfcCurve>(cn as XmlElement);
if (c != null)
inners.Add(c);
}
InnerBoundaries = inners;
}
}
}
internal override void SetXML(XmlElement xml, BaseClassIfc host, HashSet<int> processed)