Creating Families
Operation in Revit
Families
Objectives
- Learn how to create a family using Revit software.
- Learn how to create and associate parameters to the family.
- Learn how to change the visibility of the elements and views of a family.
Prerequisites
- User will be using Revit 2015 or later versions.
- User has correctly installed Revit’s Family Templates.
- User has basic modelling skills.
Configuration
- Install Revit by default.
- Check if the following folders are correctly installed:
Libraries (RFA): It is a repository of families classified by category.
Family Templates (RFT): It is a repository of templates that are very useful when creating new families.
Procedure
1 Choose the best family template
Before starting the family, we have to take care choosing the best template depending on the category that we need because the initial parameters of each family template are different.
So, the first thing we have to think about before creating the family is which kind of family are we creating.
- Annotation family
- Conceptual Mass
- Title Blocks
- Detail item family
- Technical equipments
- Furniture
- Generic Model
2 General configuration of the family
Families have a number of different parameters depending on the category to which they belong. That depends on the selected template.
We can go to Create Tab > Family Category and Parameters
There we could change the category of the family as needed, and change some of the general settings of the family. For example, we can modify “Cut with voids when loaded” or “Shared”.
3 Reference planes
First of all, we have to be careful to be working in the right view, floor, section or elevation …
Remember that a Reference Plane is a plane, and that means that if we model it in a plan view, we will see it in the correspondent elevation view.
Secondly, we should decide which is the origin of the family because this will be the point of location when we load a family in a project. The origin is always the intersection between the predefined reference planes.
Additionally to these two reference planes that define the origin of the family, we will create other reference planes to define the control structure of the family, to which the final main geometry elements will be attached. They should enough to define the main form of the family, but not so much that it becomes unintelligible.
If the family has to be centered respect to the origin defining reference planes, the additional reference planes should be restricted to be equidistants (EQ) to the origin planes.
We can add other constraints between reference planes using dimensions with fixed values or the Align tool.
4 Create and associate parameters
4.1 Create parameters
To create parameters we would go to Create Tab > Properties Panel > Family types menu.
There is where we can create all the parameters needed for the family.
It is a good practice to think in advance how our family will look, and which parameters do we need to create, to make the family parametric for those properties that should be variable.
Families with many parameters are very complex and overload the file size. Use complex families with control.
Define the parameters correctly and adapted to the property of the family that we can make variable(See Parameters Guideline):
When we select “add a parameter”, it will pop up the Parameter Properties window. In this case we could create a shared parameter or a family one and afterwards choose if it is a type or an instance. Whether we choose any of the options, we should never forget to pick out a type of parameter, not leaving the default type. When the parameter is created you will not be able to change the type of parameter later on. However, the rest of parameter settings are modifiable anytime (name of parameters).
4.2 Associate parameters
For different types of parameters there are different ways of linking them to the actual elements of the family.
- First of all, to associate dimensional parameters we need to have annotations in the form of dimensions placed in the family. To this dimensions we will be assigning a label, that is associating a parameter:
- For other type of parameters (material, visibility, family type…) we should use the Associate Parameter Button that we will find in the Properties Palette when selecting one geometry element.
When we use any of these ways of associating parameters we will also find the option to directly add (create) a new parameter to the family. By using this method we can be sure that the created parameter will always match the parameter type that is needed.
4.3 Fix dimensions
Should we need a fixed dimension, we would annotate the reference planes and close the lock that appears next to the annotation. In this case, that measurement in the family will alway be 50mm.
5 Create and pin geometry
The tools that Revit offers to generate geometry are: Extrusion, Blend, Revolve, Sweep. Swept Blend and equivalent Void forms.
When working in an elevation view or a section and starting to draw a geometry, Revit will ask which is the reference plane that we want to use. We can choose whether it is a level, a reference plane or a grid, or even we can select directly an element of the canvas.
Once we decide how we are going to draw the geometry and select the reference plane, we can start to use Revit tools for creating geometry. We have to be very careful and always draw a closed curve (sketch), without duplicate lines. If not, we will never be able to finish that form.
At the same time, we would suggest locking the sketch to the reference planes while we are drawing them. We may have problems if we forget to lock any of the curves to the reference planes.
Just if needed, we should lock the created geometry to the other views.
To constrain elements use:
- Align tool
- Locked dimensions
- Parameters
We can also add dimensional parameters inside sketches by placing dimensions and associating them with the correspondent parameter, as explained before.
6 Check if parameters are working right. Flex the family
In order to test whether the family is working properly, we should modify the value of parameters each step forward and check then that geometry is adapts accordingly.
Frequently, we will find restriction problems or not rightly locked geometries. If we just check the family at the end of the process and we hit a problem, it will be really difficult to identify what is the cause. Therefore, it will be really difficult to find the solution. However, checking the families at every step is a better way to solve problems that may occur during the process of creating a family.
Another key aspect that we should test in the family is about units. As families are usually created in millimeters but the architectural projects are usually in meters. This can stay so, but we have to be aware of that when entering values of the parameters.
7 Formulas and arrays
Formulas
When creating new parameters we find a section for formulas. Parameters can be related to annotations (as we saw in the previous step) but also can be related to other parameters. Revit supports lots of methods such as round numbers, conditionals, etc. with similar syntax to Excel formulas.
Round Function In Formulas
Values in formulas can be now rounded up or down. For example, when riser height is calculated, one needs the function “round” to find the appropriate value.
ROUND(x)
The round function returns a number rounded nearest to a whole number. It doesn’t take into consideration rounding direction (round up or down). If the number is (for example) from 24.5 to 24.9, the function rounds it to 25. If it is from 23.1 to 23.4, the function rounds it to 23.
Examples:
Round ( 23.5) = 24
ROUNDDOWN(x)
“x” is a unitless value that should return the smallest integral value less than or equal to x.
For example:
rounddown ( 23.5) = 23
ROUNDUP(x)
“x” is a unitless value that should return the largest integral value greater than or equal to x.
For example:
roundup ( 23.5) = 24
Conditional statement uses this structure:
IF (<condition>, <result-if-true>, <result-if-false>)
IF (Length < 900, <true>, <false>)
Supported Conditional Operators:
< (Less than)
> (Greater than)
= (Equal)
/ (Divide)
AND (Both statements are true)
OR (One of the statements is true)
NOT (Statement is false)
Conditional statements can contain numeric values, numeric parameter names, and Yes/No parameters.
Arrays
Arrays are really useful when creating repetitive elements that often vary in the number of elements or the distance between them.
Revit array tool allow us to do linear or circular arrays, dividing elements according to the distance to the next element or the amount of elements that should be in a fixed distance.
To assign a parameter of number of elements in an array, we have to select any of the elements and it will appear the number to change it.
To make arrays fully parametric we should associate the number and the distance parameters through a formula.
8 Visibility
As we saw briefly before, we could add visibility parameters (yes/no type) to elements, to later in the project fully control the visibility of some elements or parts of the family.
But we can play also with visibility settings and sub-categories. All three options combined can result in very complex detailed families that are useful for different detailing phases of the project.
8.1 General visibility settings of elements
Each element of a family can be visualized in differents ways depending on the level of detail and the view. An element can appear in a floor plan but not in an elevation, for instance.
Changing the Visibility-Settings we can choose the type of view in which we want to visualize each element and play with the level of detail for different configurations.
This applies also to detail elements that can be added to families. This additional information in form of 2D objects will be visible only in project views that are parallel to the view in which the element was created.
8.2 Sub-categories
A third option is to use sub-categories.
In families sub-categories are additional Object Styles, and we can assign different geometry elements to different sub-categories.
Go to Manage Tab > Object Styles > New
The subcategory will be then added to the family and we will be able to assign and object to it. If we do not specify to which subcategory an element belongs, the object will remain in the main category by default.
Once the subcategory is created inside the family it will be added to the category section in the model at the same time that the family is loaded into it.
Then we can change visibility settings in views for subcategories independently from the main category.
Subcategories should be created, if needed, in every family that we load into the project.
For similar purposes we should try to be consistent and give subcategories exactly the same name across families.
Tips&Tricks
- The origin is always the intersection between the predefined reference planes.
- Each element of a family can be visualized in differents ways depending on the level of detail and the view.
- Pin the sketches to the reference planes while drawing them.
- In order to test whether the family is working accurately, we should check parameters modifying them each step forward.
- Arrays are really useful when creating repetitive elements that often vary in the number of elements or the distance between them.
Bottom-line
Families are a key aspect in Revit because they allow us to modify geometry very efficiently.
Families are components we use to build our model, such as walls, windows, stairs, doors, etc. Each family can have multiple types, such as different size, materials, parameter variables, etc. Any change to a type is updated in every instance throughout the project. In Revit we have model families but we can also create customizable families which is really powerful.
Associated Files
- OPE_Families_Beam.rvt
- OPE_Families_Beam.rfa
- Parameters Guideline
TODO EL CONTENIDO QUE MUESTRAN ES MUY BUENO, ENTRE TODOS ELLOS, LOS QUE MAS RESALTAN SON LOS DE:
7. FORMULAS Y MATRICES
8.2 – SUB-CATEGORÍA
LES DOY LAS GRACIAS Y LAS FELICITACIONES QUE SE MERECEN .
Buen dia. Quisiera saber si existe la posibilidad de bloquear o restringir una familia de una empresa para que no pueda ser utilizada/editada por cualquier persona?
Buenas Cecilia.
Si tienes esta preocupación lo único que puedes hacer es no compartir el modelo nativo de Revit directamente sino hacer una exportación a otro formato (nwc, ifc…) que, por otra parte te puede permitir filtrar elementos/parámetros.
Mi consejo es que es un halago que el mundo use tus familias, siempre puedes ponerles un parámetro de autoría si quieres que se sepa de dónde vienen o renombrar parámetros con prefijos/sufijos identificadores, pero cuando una persona usa una familia en varios proyectos normalmente se ve obligada a modificarla/limpiarla y en ocasiones es más complicado hacer ese ejercicio de ingeniería inversa que recrearla de cero a gusto de una, todo depende del conocimiento que se tenga de la creación de familias, también conocer bien las familias base de las librerías de la instalación de Revit es crucial para modificarlas en poco tiempo, que es a lo que creo que suelen tender los especialistas BIM. Yo creo que la accesibilidad es fundamental y privar de ella al resto de agentes puede hacer que se creen fricciones ¿tú qué opinas?
Un saludo
I am really happy to say it’s an interesting post to read. I learn new information to Revit family creation services from your article, you are doing a great job. Keep it up.
Tienen alguna recomendación para el nombrado de familias?
Hola Luis, el criterio de nomenclatura suele estar incluido o en los requisitos de información o en el plan BIM de los diferentes proyectos, es habitual encontrarse soluciones del tipo ___ usando abreviaturas para los valores predefinidos como las categorías o los agentes participantes y algún estilo de escritura derivado de los lenguajes de programación para evitar caracteres incómodos a la hora de programar (como espacios o puntos), esto puede variar como te comento según el proyecto. Puedes encontrar más información sobre el nombrado de objetos BIM (no solo familias sino tipos o parámetros) guías de referencia de estándares como la NBS BIM Object Standard.
En el ejemplo que te he puesto una puerta abatible de una hoja hecha por Modelical sería PUE_MOD_Abatible_1Hoja.
Espero haberte ayudado, un saludo!