For those who work with API and understand how classes and inheritance is set, it seems for me that the classes terminology between user interface and Revit API lacks consistency.
The Families in Revit User Interface at the Project Browser, are not the same as the Revit API family class. Below the description of the API Family class:
"An element that represents a custom family (not a system family) in Autodesk Revit."
And then, I thought, well, let's find the system families that are relevant to what the user sees in the Revit UI Project Browser, and try to select through REVIT API .. unfortunately I am still searching for a way to do this quickly ..
It seems that all system families in Revit API are considered as classes under the ElementType class and those unfortunately are not only those which appear in the Project Browser, such as the CADLinkType which users do not see from the Revit UI Project Browser but they can only see from the "ManageLinks". Similarly, the DimensionType which is also under the ElementType class is invisible in the Revit User Interface.
Therefore, for selecting the System Elements Types from the Revit API which are visible at the Project Browser, someone needs to selectively get the subclasses of ElementType one by one excluding all irrelevant classes such as the CadLinkType and the DimensionType ..
..or another more time consuming process would be to get the Revit API BuiltInCategories one by one and this is really a long list to go through!!
Requests:
1.Can Revit User Interface provide a way to visually separate Custom and System Families in the Project Browser ?
2.Can Revit API have a quicker way to select the System Families and their Types which are only shown in Project Browser?
3.Can Revit User Interface provide a way to visually show all ElementType class (including DimensionType!!) in the Project Browser?
Kind regards,
Alexandros
Can't find what you're looking for? Ask the community or share your knowledge.