Exemple #1
0
    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)
Exemple #2
0
 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)
Exemple #3
0
    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)
Exemple #4
0
    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)
Exemple #6
0
 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 __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)
Exemple #9
0
    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()
Exemple #10
0
    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)
Exemple #11
0
 def process_value(cls, symbol_reference, doc):
     symbol_id = to_element_id(symbol_reference)
     return DB.FamilyInstanceFilter(doc, symbol_id)
Exemple #12
0
 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)
Exemple #13
0
 def process_value(cls, family_reference):
     family_id = to_element_id(family_reference)
     return DB.FamilySymbolFilter(family_id)
 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)