protected override void Process(IFCAnyHandle ifcPolygonalFaceSet) { base.Process(ifcPolygonalFaceSet); bool?closed = IFCAnyHandleUtil.GetBooleanAttribute(ifcPolygonalFaceSet, "Closed"); if (closed != null) { Closed = closed; } IList <IFCAnyHandle> facesHnds = IFCAnyHandleUtil.GetAggregateInstanceAttribute <List <IFCAnyHandle> >(ifcPolygonalFaceSet, "Faces"); if (facesHnds != null) { if (facesHnds.Count > 0) { Faces = new List <IFCIndexedPolygonalFace>(); } foreach (IFCAnyHandle facesHnd in facesHnds) { Faces.Add(IFCIndexedPolygonalFace.ProcessIFCIndexedPolygonalFace(facesHnd)); } } }
public static IFCIndexedPolygonalFace ProcessIFCIndexedPolygonalFace(IFCAnyHandle ifcIndexedPolygonalFace) { if (IFCAnyHandleUtil.IsNullOrHasNoValue(ifcIndexedPolygonalFace)) { Importer.TheLog.LogNullError(IFCEntityType.IfcIndexedPolygonalFace); return(null); } IFCEntity indexedPolygonalFace; if (!IFCImportFile.TheFile.EntityMap.TryGetValue(ifcIndexedPolygonalFace.StepId, out indexedPolygonalFace)) { indexedPolygonalFace = new IFCIndexedPolygonalFace(ifcIndexedPolygonalFace); } return(indexedPolygonalFace as IFCIndexedPolygonalFace); }