Пример #1
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);
            JObject jobj = obj.GetValue("NominalValue", StringComparison.InvariantCultureIgnoreCase) as JObject;

            if (jobj != null)
            {
                NominalValue = DatabaseIfc.ParseValue(jobj);
            }
        }
Пример #2
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);
            JObject jobj = obj.GetValue("ValueComponent", StringComparison.InvariantCultureIgnoreCase) as JObject;

            if (jobj != null)
            {
                mValueComponent = DatabaseIfc.ParseValue(jobj);
            }
            jobj = obj.GetValue("UnitComponent", StringComparison.InvariantCultureIgnoreCase) as JObject;
            if (jobj != null)
            {
                UnitComponent = mDatabase.ParseJObject <IfcUnit>(jobj);
            }
        }
Пример #3
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);
            JArray array = obj.GetValue("EnumerationValues", StringComparison.InvariantCultureIgnoreCase) as JArray;

            if (array != null)
            {
                mEnumerationValues.AddRange(array.Select(x => DatabaseIfc.ParseValue(x as JObject)));
            }
            JObject jobj = obj.GetValue("EnumerationReference", StringComparison.InvariantCultureIgnoreCase) as JObject;

            if (jobj != null)
            {
                EnumerationReference = mDatabase.ParseJObject <IfcPropertyEnumeration>(jobj);
            }
        }
Пример #4
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);
            JToken token = obj.GetValue("BenchMark", StringComparison.InvariantCultureIgnoreCase);

            if (token != null)
            {
                Enum.TryParse <IfcBenchmarkEnum>(token.Value <string>(), out mBenchMark);
            }
            token = obj.GetValue("ValueSource", StringComparison.InvariantCultureIgnoreCase);
            if (token != null)
            {
                ValueSource = token.Value <string>();
            }
            token = obj.GetValue("DataValue", StringComparison.InvariantCultureIgnoreCase);
            if (token != null)
            {
                JObject jobj = token as JObject;
                if (jobj != null)
                {
                    BaseClassIfc         bc    = mDatabase.ParseJObject <BaseClassIfc>(jobj);
                    IfcMetricValueSelect value = bc as IfcMetricValueSelect;
                    if (value != null)
                    {
                        DataValue = value;
                    }
                    else
                    {
                        mDataValueValue = DatabaseIfc.ParseValue(jobj);
                    }
                }
                //else
            }
            JObject jo = obj.GetValue("ReferencePath", StringComparison.InvariantCultureIgnoreCase) as JObject;

            if (jo != null)
            {
                ReferencePath = mDatabase.ParseJObject <IfcReference>(jo);
            }
        }
Пример #5
0
        internal override void parseJObject(JObject obj)
        {
            base.parseJObject(obj);

            JToken token = obj.GetValue("Name", StringComparison.InvariantCultureIgnoreCase);

            if (token != null)
            {
                Name = token.Value <string>();
            }
            token = obj.GetValue("Description", StringComparison.InvariantCultureIgnoreCase);
            if (token != null)
            {
                Description = token.Value <string>();
            }
            JObject jobj = obj.GetValue("AppliedValue", StringComparison.InvariantCultureIgnoreCase) as JObject;

            if (jobj != null)
            {
                AppliedValue = mDatabase.parseJObject <IfcAppliedValueSelect>(jobj);
                if (mAppliedValueIndex <= 0)
                {
                    mAppliedValueValue = DatabaseIfc.ParseValue(jobj);
                }
            }
            jobj = obj.GetValue("UnitBasis", StringComparison.InvariantCultureIgnoreCase) as JObject;
            if (jobj != null)
            {
                UnitBasis = mDatabase.parseJObject <IfcMeasureWithUnit>(jobj);
            }

            mDatabase.extractJArray <IfcAppliedValue>(obj.GetValue("Components", StringComparison.InvariantCultureIgnoreCase) as JArray).ForEach(x => addComponent(x));


            List <IfcExternalReferenceRelationship> ers = mDatabase.extractJArray <IfcExternalReferenceRelationship>(obj.GetValue("HasExternalReferences", StringComparison.InvariantCultureIgnoreCase) as JArray);

            for (int icounter = 0; icounter < ers.Count; icounter++)
            {
                ers[icounter].addRelated(this);
            }
            List <IfcResourceConstraintRelationship> crs = mDatabase.extractJArray <IfcResourceConstraintRelationship>(obj.GetValue("HasConstraintRelationships", StringComparison.InvariantCultureIgnoreCase) as JArray);

            for (int icounter = 0; icounter < crs.Count; icounter++)
            {
                crs[icounter].addRelated(this);
            }
            //todo
            token = obj.GetValue("Category", StringComparison.InvariantCultureIgnoreCase);
            if (token != null)
            {
                Category = token.Value <string>();
            }
            token = obj.GetValue("Condition", StringComparison.InvariantCultureIgnoreCase);
            if (token != null)
            {
                Condition = token.Value <string>();
            }
            token = obj.GetValue("ArithmeticOperator", StringComparison.InvariantCultureIgnoreCase);
            if (token != null)
            {
                Enum.TryParse <IfcArithmeticOperatorEnum>(token.Value <string>(), out mArithmeticOperator);
            }
        }