示例#1
0
def collect_spaces():
    """Collect all the spaces in the current Revit document."""
    document = DocumentManager.Instance.CurrentDBDocument
    collector = FilteredElementCollector(document)
    collector.OfCategory(BuiltInCategory.OST_MEPSpaces)
    room_iter = collector.GetElementIdIterator()
    room_iter.Reset()
    return tuple(document.GetElement(el_id) for el_id in room_iter)
示例#2
0
def collectRooms(document=None):
    """Collect all the rooms in the current Revit document."""
    if not document:
        document = DocumentManager.Instance.CurrentDBDocument
    collector = FilteredElementCollector(document)
    collector.OfCategory(BuiltInCategory.OST_Rooms)
    roomIter = collector.GetElementIdIterator()
    roomIter.Reset()
    return tuple(document.GetElement(elId) for elId in roomIter)
示例#3
0
def collect_curtain_panels():
    doc = DocumentManager.Instance.CurrentDBDocument

    collector = FilteredElementCollector(doc)
    collector.OfCategory(BuiltInCategory.OST_CurtainWallPanels)
    collector.OfClass(FamilyInstance)

    cw_element_collector = collector.GetElementIdIterator()
    cw_element_collector.Reset()

    cw_collector = (doc.GetElement(cw_id) for cw_id in cw_element_collector)
    return tuple(cw.ToDSType(True) for cw in cw_collector
                 if cw.Symbol.Family.Name == 'System Panel')
    Label('Enter Parameter Name:'),
    TextBox('textbox1', Text="CheckBalcony"),
    Label('Enter Room Name:'),
    TextBox('textbox2', Text="Balcony"),
    Separator(),
    Label('Nguyen Khanh Tien - [email protected]'),
    Button('Select')
]
form = FlexForm('Check Parameter Value', component)
form.show()
paraname = form.values['textbox1']
name = form.values['textbox2']
RmFilter = RoomFilter()
collector = FilteredElementCollector(doc)
collector.WherePasses(RmFilter)
roomIdItr = collector.GetElementIdIterator()
roomIdItr.Reset()

t = Transaction(doc, "Check Parameter Value")
t.Start()
print("Checking...")
while (roomIdItr.MoveNext()):
    roomId = roomIdItr.Current
    room = doc.GetElement(roomId)
    rmname = room.LookupParameter("Name").AsString()
    checkbal = room.LookupParameter(paraname)
    if (name in rmname):
        checkbal.Set(True)
    else:
        checkbal.Set(False)
print("COMPLETED!!!")