예제 #1
0
 protected override void setJSON(JObject obj, BaseClassIfc host, HashSet <int> processed)
 {
     base.setJSON(obj, host, processed);
     obj["OuterBoundary"] = OuterBoundary.getJson(this, processed);
     if (mInnerBoundaries.Count > 0)
     {
         obj["InnerBoundaries"] = new JArray(InnerBoundaries.ToList().ConvertAll(x => x.getJson(this, processed)));
     }
 }
예제 #2
0
 protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
 {
     base.setJSON(obj, host, options);
     obj["OuterBoundary"] = OuterBoundary.getJson(this, options);
     if (mInnerBoundaries.Count > 0)
     {
         obj["InnerBoundaries"] = new JArray(InnerBoundaries.ToList().ConvertAll(x => x.getJson(this, options)));
     }
 }
예제 #3
0
 protected override void setJSON(JObject obj, BaseClassIfc host, SetJsonOptions options)
 {
     base.setJSON(obj, host, options);
     obj["BasisSurface"]  = BasisSurface.getJson(this, options);
     obj["OuterBoundary"] = OuterBoundary.getJson(this, options);
     if (mInnerBoundaries.Count > 0)
     {
         obj["InnerBoundaries"] = new JArray(InnerBoundaries.Select(x => x.getJson(this, options)));
     }
 }
예제 #4
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);
            JObject jobj = obj.GetValue("OuterBoundary", StringComparison.InvariantCultureIgnoreCase) as JObject;

            if (jobj != null)
            {
                OuterBoundary = mDatabase.ParseJObject <IfcCurve>(jobj);
            }
            InnerBoundaries.AddRange(mDatabase.extractJArray <IfcCurve>(obj.GetValue("InnerBoundaries", StringComparison.InvariantCultureIgnoreCase) as JArray));
        }
예제 #5
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);
            BasisSurface  = extractObject <IfcPlane>(obj.GetValue("BasisSurface", StringComparison.InvariantCultureIgnoreCase) as JObject);
            OuterBoundary = extractObject <IfcCurve>(obj.GetValue("OuterBoundary", StringComparison.InvariantCultureIgnoreCase) as JObject);
            JArray array = obj.GetValue("InnerBoundaries", StringComparison.InvariantCultureIgnoreCase) as JArray;

            if (array != null)
            {
                InnerBoundaries.AddRange(mDatabase.extractJArray <IfcCurve>(array));
            }
        }
예제 #6
0
		internal override void ParseXml(XmlElement xml)
		{
			base.ParseXml(xml);
			foreach (XmlNode child in xml.ChildNodes)
			{
				string name = child.Name;
				if (string.Compare(name, "OuterBoundary") == 0)
					OuterBoundary = mDatabase.ParseXml<IfcCurve>(child as XmlElement);
				else if (string.Compare(name, "InnerBoundaries") == 0)
				{
					foreach (XmlNode cn in child.ChildNodes)
					{
						IfcCurve c = mDatabase.ParseXml<IfcCurve>(cn as XmlElement);
						if (c != null)
							InnerBoundaries.Add(c);
					}
				}
			}
		}