A Revit family is an essential part of a Revit model, exactly like precast panels or bricks in real buildings, they are the building blocks. And as such, it is essential to get to know the difference between them and how to build Revit families. We will explore the different types of families as well as different ways to approach the creation of loadable families.
Types of families
There are 3 kinds of families in Revit:
- System families are those that are built-in inside the project like Walls, Ramps or Ducts.
- In-Place families are families that are created uniquely for the project, like a sculpture modeled as a component in place.
- Loadable families, like Doors, Casework or Fixtures.
In this document, we are going to explain a good way to structure Loadable families.
A simple loadable family
The first type of loadable family is the one that has been designed and modeled all inside a single document, meaning that all the geometry and annotation elements, if any, are modeled in the ‘.rfa’ file. As an example, the default columns belong to this type and also the following family, the Aalto vase:
As shown in the diagram, the Aalto vase family can be divided into two geometrical elements; the Blend and the Void, and several annotation elements; the Masking region and some Annotation lines.
A nested family
Now it comes a bit of complexity, in this section, a single loadable family becomes part of another family. This is called a nested family and its basic advantages are:
- Performance: as noted in the Autodesk Revit Model Performance Technical Note, nested families are favored over arrays of the same elements. The main reason is that the second element of the nested family is a reference to the first one, consuming less memory, but in the case of geometry copies, the duplicated elements are using double the memory.
- Maintainability: changes in the nested family are propagated and updated in all the other nested families once it is reloaded. Groups could do this inside a family, nested can be propagated to all families.
- Scalability: single families can be the building blocks to endless varieties of families. Put as an example, a door symbol can be reused for the casework or normal doors, a generic box used as a frame, glass, or table. Imagination is the limit!
Let’s examine another example, the Aalto’s Paimio Armchair:
This family is made of:
- Geometry; 2 frame families that are nested, the seat, spindle, and aprons.
- Annotation; masking region and several symbolic lines for armrest and details.
The advantages stated before are more evident with this example. In case you want to change the frame style or dimension, the process will be editing the frame only once and reload it. Also, the size is smaller than a no nested family frame as you can see in the following screenshot:
This is a great reason to include nested families in our final family, but as we will see, sometimes is a trade-off between Performance and Maintainability.
A complex family
Don’t be scared by the title, complex doesn’t mean complicated. It is complex in terms of organization, but it provides big advantages to the organization and structure of a family in an effective and clever way.
In this case, we are using this under bench cupboard as an example:
The cupboard is formed by the six nested families as you can see in the diagram. From those six, only the kickplate and the door are special families, the rest are nested instances of the family Substrate. The door is made of the usual annotation elements and the geometry consists again of a Substrate family and a Handle family.
In terms of file size, this family is definitely not the lightest but it has impressive advantages in terms of Maintainability and Scalability. The Kickplate can be reused in any other Casework families, the door can be used in a Door family, or each of its components serves to the purpose of assembling a new door.
Now, the unavoidable question: when and where to use each type of family?
The simple answer is that there is no golden rule to determine it, each project is different and evolves, in which process it demands new requirements. The best option is to have a library with nested or complex families that allow Revit users to find the elements they require and have a sufficient degree of flexibility to adapt it to the project.
This comes at the cost of file size, but the gain is documentation accuracy and lesser time in modeling and preparing documentation. Also, Revit provides, among Worksets, different ways to cope with file size.