示例#1
0
        public ClassRoom parseRoom(RevitRoom room)
        {
            ClassRoom raum = new ClassRoom();

            raum.RoomArea = squarefeetToMeter(room.Area);
            raum.RoomType = room.GetParameters("Nutzungsgruppe DIN 277-2")[0].AsString();

            return(raum);
        }
示例#2
0
        public BindingList <ClassRoom> getRooms(Level floor)
        {
            IEnumerable <Element> Roomsbylevel_filcol = new FilteredElementCollector(revitDocument)                                                                   //search only in this level
                                                        .OfClass(typeof(SpatialElement)).Where(room => room.GetType() == typeof(Autodesk.Revit.DB.Architecture.Room)) //get all rooms
                                                        .Cast <SpatialElement>()                                                                                      //cast results to SpatialElements
                                                        .Where(o => o.LevelId == floor.Id);                                                                           //search by the above mentioned Level

            BindingList <ClassRoom> crooms = new BindingList <ClassRoom>();

            foreach (SpatialElement r in Roomsbylevel_filcol)
            {
                ClassRoom croom = parseRoom((RevitRoom)r);
                if (croom != null)
                {
                    crooms.Add(croom);
                }
            }
            return(crooms);
        }