public static void GetInstanceGeometry(GeometryObject obj, Dictionary areas){ GeometryInstance instance = obj as GeometryInstance; if (null != instance) { GeometryElement instanceGeometryElement = instance.GetInstanceGeometry(); foreach (GeometryObject instanceObj in instanceGeometryElement){ Solid instanceGeomSolid = instanceObj as Solid; if (null != instanceGeomSolid){ foreach (Face geomFace in instanceGeomSolid.Faces) { try{ areas.Add((int)geomFace.Area, geomFace); } catch{ // TaskDialog.Show("Result", "Solid geometry not found"); } } } } }//close object array }//close method