public IfcGrid(IfcSpatialElement host, IfcAxis2Placement3D placement, List <IfcGridAxis> uAxes, List <IfcGridAxis> vAxes) : base(new IfcLocalPlacement(host.ObjectPlacement, placement), getRepresentation(uAxes, vAxes, null)) { host.addGrid(this); UAxes.AddRange(uAxes); VAxes.AddRange(vAxes); }
internal IfcGrid(DatabaseIfc db, IfcGrid g, DuplicateOptions options) : base(db, g, options) { UAxes.AddRange(g.UAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis)); VAxes.AddRange(g.VAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis)); WAxes.AddRange(g.WAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis)); mPredefinedType = g.mPredefinedType; }
internal IfcGrid(DatabaseIfc db, IfcGrid g, IfcOwnerHistory ownerHistory, bool downStream) : base(db, g, ownerHistory, downStream) { UAxes.AddRange(g.UAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis)); VAxes.AddRange(g.VAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis)); WAxes.AddRange(g.WAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis)); mPredefinedType = g.mPredefinedType; }
internal override void parseJObject(JObject obj) { base.parseJObject(obj); UAxes.AddRange(mDatabase.extractJArray <IfcGridAxis>(obj.GetValue("UAxes", StringComparison.InvariantCultureIgnoreCase) as JArray)); VAxes.AddRange(mDatabase.extractJArray <IfcGridAxis>(obj.GetValue("VAxes", StringComparison.InvariantCultureIgnoreCase) as JArray)); WAxes.AddRange(mDatabase.extractJArray <IfcGridAxis>(obj.GetValue("WAxes", StringComparison.InvariantCultureIgnoreCase) as JArray)); }
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); UAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x => dictionary[x] as IfcGridAxis)); VAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x => dictionary[x] as IfcGridAxis)); WAxes.AddRange(ParserSTEP.StripListLink(str, ref pos, len).ConvertAll(x => dictionary[x] as IfcGridAxis)); if (release != ReleaseVersion.IFC2x3) { string s = ParserSTEP.StripField(str, ref pos, len); if (s[0] == '.') { Enum.TryParse <IfcGridTypeEnum>(s.Replace(".", ""), true, out mPredefinedType); } } }