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 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) : base(db, g) { UAxes = g.UAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis); VAxes = g.VAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis); WAxes = g.WAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis); mPredefinedType = g.mPredefinedType; }
internal IfcGrid(DatabaseIfc db, IfcGrid g) : base(db, g, false) { g.UAxes.ToList().ForEach(x => AddUAxis(db.Factory.Duplicate(x) as IfcGridAxis)); g.VAxes.ToList().ForEach(x => AddVAxis(db.Factory.Duplicate(x) as IfcGridAxis)); g.WAxes.ToList().ForEach(x => AddWAxis(db.Factory.Duplicate(x) as IfcGridAxis)); mPredefinedType = g.mPredefinedType; }
internal static void parseFields(IfcGrid g, List <string> arrFields, ref int ipos, ReleaseVersion schema) { IfcProduct.parseFields(g, arrFields, ref ipos); g.mUAxes = ParserSTEP.SplitListLinks(arrFields[ipos++]); g.mVAxes = ParserSTEP.SplitListLinks(arrFields[ipos++]); string s = arrFields[ipos++]; if (s != "$") { g.mWAxes = ParserSTEP.SplitListLinks(s); } if (schema != ReleaseVersion.IFC2x3) { s = arrFields[ipos++]; if (s[0] == '.') { g.mPredefinedType = (IfcGridTypeEnum)Enum.Parse(typeof(IfcGridTypeEnum), s.Replace(".", "")); } } }
internal Curve Curve(double tol) { Curve c = AxisCurve.Curve(tol); if (c == null) { return(null); } IfcGrid grid = mPartOfU; if (grid == null) { grid = mPartOfV; } if (grid == null) { grid = mPartOfW; } if (grid != null) { c.Transform(grid.PlacementTransform()); } return(c); }
internal static void parseFields(IfcGrid g, List<string> arrFields, ref int ipos, Schema schema) { IfcProduct.parseFields(g, arrFields, ref ipos); g.mUAxes = ParserSTEP.SplitListLinks(arrFields[ipos++]); g.mVAxes = ParserSTEP.SplitListLinks(arrFields[ipos++]); string s = arrFields[ipos++]; if (s != "$") g.mWAxes = ParserSTEP.SplitListLinks(s); if (schema != Schema.IFC2x3) { s = arrFields[ipos++]; if (s[0] == '.') g.mPredefinedType = (IfcGridTypeEnum)Enum.Parse(typeof(IfcGridTypeEnum), s.Replace(".", "")); } }
internal static IfcGrid Parse(string strDef, Schema schema) { IfcGrid g = new IfcGrid(); int ipos = 0; parseFields(g, ParserSTEP.SplitLineFields(strDef), ref ipos,schema); return g; }
internal IfcGrid(IfcGrid g) : base(g) { mUAxes = new List<int>(g.mUAxes.ToArray()); mVAxes = new List<int>(g.mVAxes.ToArray()); mWAxes = new List<int>(g.mWAxes.ToArray()); mPredefinedType = g.mPredefinedType; }
internal static IfcGrid Parse(string strDef, ReleaseVersion schema) { IfcGrid g = new IfcGrid(); int ipos = 0; parseFields(g, ParserSTEP.SplitLineFields(strDef), ref ipos, schema); return(g); }
internal IfcGrid(IfcGrid g) : base(g) { mUAxes = new List <int>(g.mUAxes.ToArray()); mVAxes = new List <int>(g.mVAxes.ToArray()); mWAxes = new List <int>(g.mWAxes.ToArray()); mPredefinedType = g.mPredefinedType; }
internal IfcGrid(DatabaseIfc db, IfcGrid g) : base(db, g,false) { UAxes = g.UAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis); VAxes = g.VAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis); WAxes = g.WAxes.ConvertAll(x => db.Factory.Duplicate(x) as IfcGridAxis); mPredefinedType = g.mPredefinedType; }
internal void setAggregate(BaseClassIfc obj) { IfcProduct product = obj as IfcProduct; if (product != null) { mProducts.Add(product); IfcBuildingStorey buildingStorey = obj as IfcBuildingStorey; if (buildingStorey != null) { mBuildingStories.Add(buildingStorey); } IfcGrid grid = obj as IfcGrid; if (grid != null) { mGrids.Add(grid); } IfcSlab slab = product as IfcSlab; if (slab != null) { mSlabs.Add(slab); } IfcStructuralItem structuralItem = obj as IfcStructuralItem; if (structuralItem != null) { mStructItems.Add(structuralItem); } IfcWall wall = product as IfcWall; if (wall != null) { mWalls.Add(wall); } return; } //IfcApplication application = obj as IfcApplication; //if (application != null) // mApplications.Add(application); IfcComplexProperty cp = obj as IfcComplexProperty; if (cp != null) { mComplexProperties.Add(cp); return; } IfcCoordinateOperation coordOp = obj as IfcCoordinateOperation; if (coordOp != null) { mCoordinateOperations.Add(coordOp); return; } IfcEdgeCurve edgeCurve = obj as IfcEdgeCurve; if (edgeCurve != null) { mEdgeCurves.Add(edgeCurve); return; } IfcExternalReferenceRelationship externalReferenceRelationship = obj as IfcExternalReferenceRelationship; if (externalReferenceRelationship != null) { mExternalRelationships.Add(externalReferenceRelationship); return; } //IfcExtrudedAreaSolid extrudedAreaSolid = result as IfcExtrudedAreaSolid; //if(extrudedAreaSolid != null) //{ // if(result as IfcExtrudedAreaSolidTapered == null) // aggregate.mExtrusions.Add(extrudedAreaSolid); // return extrudedAreaSolid; //} IfcGeometricRepresentationSubContext geometricRepresentationContext = obj as IfcGeometricRepresentationSubContext; if (geometricRepresentationContext != null) { mGeomContexts.Add(geometricRepresentationContext); return; } IfcGroup group = obj as IfcGroup; if (group != null) { IfcZone zone = group as IfcZone; if (zone != null) { mZones.Add(zone); return; } mGroups.Add(group); return; } IfcIndexedColourMap indexedColourMap = obj as IfcIndexedColourMap; if (indexedColourMap != null) { mIndexedColourMap.Add(indexedColourMap); return; } IfcIndexedTextureMap indexedTextureMap = obj as IfcIndexedTextureMap; if (indexedTextureMap != null) { mIndexedTextureMap.Add(indexedTextureMap); return; } IfcLocalPlacement localPlacement = obj as IfcLocalPlacement; if (localPlacement != null) { mLocalPlacements.Add(localPlacement); return; } IfcMappedItem mi = obj as IfcMappedItem; if (mi != null) { mMappedItems.Add(mi); return; } IfcMaterial material = obj as IfcMaterial; if (material != null) { mMaterials.Add(material); return; } IfcMaterialProperties materialProperties = obj as IfcMaterialProperties; if (materialProperties != null) { mMaterialProperties.Add(materialProperties); return; } IfcMaterialPropertiesSuperSeded materialPropertiesSS = obj as IfcMaterialPropertiesSuperSeded; if (materialPropertiesSS != null) { mMaterialPropertiesSS.Add(materialPropertiesSS); return; } // IfcMechanicalFastener mechanicalFastener = result as IfcMechanicalFastener; //if(mechanicalFastener != null) //{ // mFasteners.Add(mechanicalFastener); // return mechanicalFastener; //} //IfcOwnerHistory ownerHistory = result as IfcOwnerHistory; //if(ownerHistory != null) //{ // mOwnHistories.Add(ownerHistory); // return ownerHistory; //} IfcPresentationLayerAssignment presentationLayerAssignment = obj as IfcPresentationLayerAssignment; if (presentationLayerAssignment != null) { mPresentationLayerAssignments.Add(presentationLayerAssignment); return; } IfcProductRepresentation productRepresentation = obj as IfcProductRepresentation; if (productRepresentation != null) { mProductReps.Add(productRepresentation); return; } IfcPropertySet propSet = obj as IfcPropertySet; if (propSet != null) { mPropertySets.Add(propSet); return; } //IfcProfileDef profileDef = obj as IfcProfileDef; //if (profileDef != null) //{ // mProfiles.Add(profileDef); // return profileDef; //} IfcRelationship relationship = obj as IfcRelationship; if (relationship != null) { mRelationships.Add(relationship); return; } IfcRepresentation representation = obj as IfcRepresentation; if (representation != null) { mRepresentations.Add(representation); return; } //IfcRepresentationMap representationMap = obj as IfcRepresentationMap; //if (representationMap != null) //{ // mRepMaps.Add(representationMap); // return representationMap; //} IfcResourceConstraintRelationship rcr = obj as IfcResourceConstraintRelationship; if (rcr != null) { mConstraintRelationships.Add(rcr); return; } IfcShapeAspect shapeAspect = obj as IfcShapeAspect; if (shapeAspect != null) { mShapeAspects.Add(shapeAspect); return; } IfcStyledItem styledItem = obj as IfcStyledItem; if (styledItem != null) { mStyledItems.Add(styledItem); return; } IfcTypeProduct typeProduct = obj as IfcTypeProduct; if (typeProduct != null) { mTypeProducts.Add(typeProduct); return; } setCustomAggregate(obj); }