def change_type(self, wall_type_reference): """ Change Wall Type Args: wall_type_reference (``ElementId``, ``WallType``, ``str``): Wall Type Reference """ wall_type = WallType.by_name_or_element_ref(wall_type_reference) wall_type_id = to_element_id(wall_type) self._revit_object.ChangeTypeId(wall_type_id)
def _set_overrides(self, target): targets = to_iterable(target) for target in targets: try: category_id = to_category_id(target) self._set_category_overrides(category_id) except (RpwTypeError, RpwCoerceError) as errmsg: logger.debug('Not Category, Trying Element Override') element_id = to_element_id(target) self._set_element_overrides(element_id)
def match_element(self, target, element_to_match): """ Matches the settings of another element Args: target (``Element``, ``ElementId``, ``Category``): Target Element(s) or Category(ies) to apply override. Can be list. element_to_match (``Element``, ``ElementId``): Element to match """ element_to_match = to_element_id(element_to_match) self._revit_object = self.view.GetElementOverrides(element_to_match) self._set_overrides(target)
def __contains__(self, element_or_id): """ Checks if selection contains the element Reference. Args: Reference: Element, ElementId, or Integer Returns: bool: ``True`` or ``False`` """ element_id = to_element_id(element_or_id) return bool(element_id in self.get_element_ids(as_list=False))
def __contains__(self, element_or_id): """ Checks if selection contains the element Reference. Args: Reference: Element, ElementId, or Integer Returns: bool: ``True`` or ``False`` """ # TODO Write Tests element_id = to_element_id(element_or_id) return bool(element_id in self.element_ids)
def process_value(cls, level_reference): """ Process level= input to allow for level name """ if isinstance(level_reference, str): level = Collector(of_class='Level', is_type=False, where=lambda x: x.Name == level_reference) try: level_id = level[0].Id except IndexError: RpwCoerceError(level_reference, DB.Level) else: level_id = to_element_id(level_reference) return DB.ElementLevelFilter(level_id, cls.reverse)
def pop(self, element_reference, wrapped=True): """ Removed from set using ElementIds Args: element_reference (DB.ElementId, DB.Element) Returns: (DB.Element, db.Element) """ element_id = to_element_id(element_reference) element = self.__getitem__(element_id) self._element_id_set.remove(element_id) return element if wrapped else element.unwrap()
def __getitem__(self, element_reference): """ Get Element from set from an element ElementId Args: element_reference (DB.Element, DB.ElementID) Returns: (wrapped_element): Wrapped Element. Raises Key Error if not found. """ eid_key = to_element_id(element_reference) for element in self.__iter__(): if element.Id == eid_key: return element raise KeyError(eid_key)
def process_value(cls, symbol_reference, doc): symbol_id = to_element_id(symbol_reference) return DB.FamilyInstanceFilter(doc, symbol_id)
def process_value(cls, view_reference): if view_reference is not None: view_id = to_element_id(view_reference) else: view_id = DB.ElementId.InvalidElementId return DB.ElementOwnerViewFilter(view_id, cls.reverse)
def process_value(cls, family_reference): family_id = to_element_id(family_reference) return DB.FamilySymbolFilter(family_id)