Beispiel #1
0
 internal override void ParseXml(XmlElement xml)
 {
     base.ParseXml(xml);
     if (xml.HasAttribute("UnitType"))
     {
         Enum.TryParse <IfcDerivedUnitEnum>(xml.Attributes["UnitType"].Value, true, out mUnitType);
     }
     if (xml.HasAttribute("UserDefinedType"))
     {
         UserDefinedType = xml.Attributes["UserDefinedType"].Value;
     }
     foreach (XmlNode child in xml.ChildNodes)
     {
         string name = child.Name;
         if (string.Compare(name, "Elements") == 0)
         {
             List <IfcDerivedUnitElement> elements = new List <IfcDerivedUnitElement>();
             foreach (XmlNode node in child.ChildNodes)
             {
                 IfcDerivedUnitElement element = mDatabase.ParseXml <IfcDerivedUnitElement>(node as XmlElement);
                 if (element != null)
                 {
                     elements.Add(element);
                 }
             }
             Elements = elements;
         }
     }
 }
Beispiel #2
0
		internal static IfcDerivedUnitElement Parse(string strDef) { IfcDerivedUnitElement e = new IfcDerivedUnitElement(); int ipos = 0; parseFields(e, ParserSTEP.SplitLineFields(strDef), ref ipos); return e; }
Beispiel #3
0
		internal static void parseFields(IfcDerivedUnitElement e, List<string> arrFields, ref int ipos) { e.mUnit = ParserSTEP.ParseLink(arrFields[ipos++]); e.mExponent = ParserSTEP.ParseInt(arrFields[ipos++]); }
Beispiel #4
0
		internal IfcDerivedUnitElement(IfcDerivedUnitElement v) : base() { mUnit = v.mUnit; mExponent = v.mExponent; }
Beispiel #5
0
		internal IfcDerivedUnit(IfcDerivedUnitElement due1, IfcDerivedUnitElement due2, IfcDerivedUnitElement due3, IfcDerivedUnitEnum type) : base(due1.mDatabase) { mElements.Add(due1.mIndex); mElements.Add(due2.mIndex); mElements.Add(due3.mIndex); mUnitType = type;  }
Beispiel #6
0
		internal IfcDerivedUnit(IfcDerivedUnitElement element, IfcDerivedUnitEnum type) : base(element.mDatabase) { mElements.Add(element.mIndex); mUnitType = type;  }
Beispiel #7
0
		internal IfcDerivedUnitElement(DatabaseIfc db, IfcDerivedUnitElement e) : base(db) { Unit = db.Factory.Duplicate(e.Unit) as IfcNamedUnit; mExponent = e.mExponent; }