Наследование: IfcPropertyAbstraction
Пример #1
0
 internal override void ParseXml(XmlElement xml)
 {
     base.ParseXml(xml);
     if (xml.HasAttribute("Name"))
     {
         Name = xml.Attributes["Location"].Value;
     }
     if (xml.HasAttribute("Description"))
     {
         Description = xml.Attributes["Description"].Value;
     }
     foreach (XmlNode child in xml.ChildNodes)
     {
         string name = child.Name;
         if (string.Compare(name, "Properties") == 0)
         {
             foreach (XmlNode cn in child.ChildNodes)
             {
                 IfcProperty p = mDatabase.ParseXml <IfcProperty>(cn as XmlElement);
                 if (p != null)
                 {
                     mProperties[p.Name] = p;
                 }
             }
         }
     }
 }
Пример #2
0
		internal virtual IfcProperty findProperty(string name)
		{
			List<IfcPropertySet> psets = Extract<IfcPropertySet>();
			foreach (IfcPropertySet pset in psets)
			{
				IfcProperty p = pset.FindProperty(name);
				if (p != null)
					return p;
			}
			return null;
		}
Пример #3
0
 internal override void postParseRelate()
 {
     base.postParseRelate();
     foreach (int i in mPropertyIndices)
     {
         IfcProperty p = mDatabase[i] as IfcProperty;
         if (p != null)
         {
             AddProperty(p);
         }
     }
 }
Пример #4
0
        public virtual IfcProperty FindProperty(string name)
        {
            List <IfcPropertySet> psets = Extract <IfcPropertySet>();

            foreach (IfcPropertySet pset in psets)
            {
                IfcProperty p = pset.FindProperty(name);
                if (p != null)
                {
                    return(p);
                }
            }
            return(null);
        }
Пример #5
0
 internal override void parse(string str, ref int pos, ReleaseVersion release, int len, ConcurrentDictionary <int, BaseClassIfc> dictionary)
 {
     base.parse(str, ref pos, release, len, dictionary);
     foreach (int i in ParserSTEP.StripListLink(str, ref pos, len))
     {
         IfcProperty property = dictionary[i] as IfcProperty;
         if (property != null)
         {
             mProperties[property.Name] = property;
         }
     }
     mDescription = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
     mName        = ParserIfc.Decode(ParserSTEP.StripString(str, ref pos, len));
 }
Пример #6
0
		protected static void parseFields(IfcProperty p, List<string> arrFields, ref int ipos) { p.mName = arrFields[ipos++].Replace("'", ""); p.mDescription = arrFields[ipos++].Replace("'", ""); }
Пример #7
0
		protected IfcProperty(IfcProperty r) { mName = r.mName; mDescription = r.mDescription; }