Revit Creating Family
Revit Creating Family
Revit Creating Family
413
414 | Chapter 12 Creating Families
About Families and the Family
Editor
12
All elements in Autodesk Revit Building 9.1 are “family based.” The term family describes a powerful
concept used throughout Revit Building to help you manage your data and make changes easily. Each
family element can have multiple types defined within it, each with a different size, shape, material set,
or other parameter variables as designed by the family creator. Even though various types within a family
can look completely different, they are still related and come from a single source, thus the term family.
Changes to a family type definition ripple through the project and are automatically reflected in every
instance of that family or type within the project. This keeps everything coordinated and saves you the
In this tutorial, you learn about the various types of families and the Family Editor.
415
Using Families and the Family Editor
One of the many advantages of using Revit Building is the ability to create your own families of components without
having to learn a complex programming language. Using the Family Editor, you create a family within predefined
templates that contain the intelligent objects needed to create the particular family type. You provide the information
necessary to uniquely describe the family geometry.
In this lesson, you learn about the three types of families and how they are used within a project and how they are
created. You also learn about the Family Editor, and when and how to use it.
Introduction to Families
Most families are created in the Family Editor and saved as separate files with an .rfa extension. All different types that
you create are stored with the master family file. For example, if you create a family called "double-hung window" that
includes types with several sizes, the types would all be saved as one file which can then be loaded into any project.
This makes file management much easier, because there is only one file to track. There are, however, exceptions to this
rule. Some family types are pre-defined within Revit Building and cannot be created or modified outside of the project
environment. Walls, floors, and roofs are examples of these types of families. In addition, there is another type of family
that allows you to create any shape or form required for a particular project and have Revit Building recognize it as a
particular component type, such as a dome roof.
Revit Building has three types of families:
■ System
■ Standard Component
■ In-place
System Families
System families are pre-defined within Revit Building and comprise principle building components such as walls, floors,
and roofs. The basic walls system family, for example, has wall types that define interior, exterior, foundation, generic,
and partition wall styles. You can duplicate and modify existing system families, but you cannot create new system
families.
NOTE You can use “Transfer Project Standards” to copy system families from one project to another.
The following illustration shows different types within the basic walls family.
Standard component families are loaded by default in project templates, while many more are stored in component
libraries. You work with the Family Editor to create and modify components. You can either duplicate and modify an
existing component family or create a new component family based on a variety of family templates.
Family templates are either host-based or standalone. Host-based families have components that require hosts. An
example is a door family hosted by a wall family. Standalone families include columns, trees, and furniture. Family
templates assist you in creating and manipulating component families.
Standard component families can exist outside of the project environment and have an .rfa extension. You can load
them into projects, transfer them from one project to another, and save them from a project file to your library if
needed.
In-place Families
In-place families are either model or annotation components in a particular project. You create in-place families only
within the current project, so they are useful for objects unique to that project; for example, custom wall treatments.
You have a choice of categories when you create in-place families, and the category that you use determines the
component’s appearance and display control within the project.
The following illustration shows a building model of the Pantheon without a roof and with an in-place roof family.
In this section, you learned about the different types of Revit Building families and when to use them. In the final
exercise, you learn about the Family Editor, how to access it, and when to use it.
During the design process, you will inevitably come to a point where you need a specific component for your design.
In this case, presume it is a bay window that you require. There is a logical thought process that you should follow:
1 Is there a component of this type already loaded into this project? If so, it should be available within the Type
Selector.
2 If there isn’t a component family loaded in the project, you can search the component library loaded on your local
hard drive. Also consider any internal family libraries that may exist on the network.
3 Next, consider checking the web library and other web resources, such as newsgroups.
4 If you can’t find the component you require, you should then try to find the component that most closely resembles
it. It is far easier to modify an existing component within the Family Editor than to create it from scratch. If you
find a close match, open it in the Family Editor, modify it as needed, and then load it into the project.
5 Finally, if you have exhausted your external resources, you should create a new component family using one of
the family templates as a starting point.
You can access the Family Editor in several ways. With Revit Building open, you can click File ➤ Open, navigate to a
family file, and click Open. When the family opens, it opens within the Family Editor. This will be apparent because
the only Design Bar tab available is Family.
Within the Windows® environment, you can double-click any file with an .rfa extension and it will open Revit Building
in the Family Editor. You can have a project open and the Family Editor open simultaneously.
To start a new family, click File ➤ New ➤ Family, select the appropriate template, and click Open.
learn how to create a different type of component. Using the installed templates, you start with a simple
door family and then move onto a window family. You create a furniture family, a lighting fixture, and
several annotation families. In addition, you create an in-place family. When you create an in-place
family, you create it within the project file, not within the Family Editor. This allows you to create the
419
Creating a Door Family
In this lesson, you create a custom door family based on the definition of a flush exterior door. After you create the
door leaf as an extrusion, you create new door types based on size and assign parameters respectively.
You also learn how to constrain the door design by adding labelled dimensions to specify values for the door width,
height, and thickness.
14 Add a vertical dimension from the top edge of the door panel to the bottom edge as shown.
NOTE This same label is applied to the dimension referencing the door opening. Because labelled dimensions
are parameters, a user can change the value of the Width parameter and all dimensions labelled with it change
accordingly.
20 Select the dimension with the two EQ symbols and move it, along with the witness line controls, so it
doesn’t visually interfere with the door swing location, as shown.
TIP If the Arc from Center and End Points command is not visible on the Options Bar, click the down arrow
button, and select the command from the menu.
When drawing an arc from center and end points, you first specify the arc center, then you specify each
end point.
24 Enter SI, and select the intersection at the upper left corner of the door opening for the arc center point.
25 Select the upper right corner of the door opening for the arc start point.
26 Select the upper left corner of the door leaf for the arc endpoint.
In the image below, the arc is selected so you can see the arc center and each end point.
27 Proceed to the next exercise, “Creating the Door Leaf Solid Geometry” on page 425.
TIP When you add the witness line to the exterior face of the extrusion, use the TAB key to toggle to the extrusion
reference, then click to specify the dimension witness line.
22 Proceed to the next exercise, “Assigning Materials to the Door Components” on page 428.
10 In the Element Properties dialog box, under Materials and Finishes, click for Material.
11 In the Materials dialog box, under Name, select Oak Door, and click OK.
12 In the Element Properties dialog box, click OK.
The door leaf is assigned the new Oak Door material.
20 In the Project Browser, under Views (all), under 3D Views, double-click View 1.
21 On the View Control Bar, click the Model Graphics Style control, and select Shading with Edges.
The Oak Door material is now assigned to the door leaf and door frame.
27 Click OK.
28 Proceed to the next exercise, “Defining New Door Types” on page 430
11 Click OK.
You now have three new door types defined within your door family.
You now have three new flush exterior doors based on the new door family prototype. This completes the lesson,
Creating a Door Family.
Change the height and width values again, and click Apply. Notice how the window opening adapts to
the changing dimension values. This process is called “flexing the model,” and it is done to avoid conflicts
and to ensure that all model geometry adjusts to changes as designed.
11 Enter 1000 mm for Height and 2000 mm for Width, and click Apply.
This is the starting point for the new window.
12 Click OK.
13 Proceed to the next exercise, “Creating the Window Frame Solid Geometry” on page 435.
19 On the Design Bar, click Modify, and select the reference plane.
NOTE When you sketch the frame profile, the exact dimensions are not critical. However, the frame profile
should extend beyond the edges of the wall. Precise dimensions are assigned to the frame profile in subsequent
steps.
27 Select the left edge of the frame section, and drag it to the interior face of the wall. When the lock displays,
click it to constrain the left edge of the frame to the interior face.
28 Select the short line parallel and to the right of the Sash reference plane. Drag it to the left and align it
with the Sash reference plane. When the lock displays, click it to lock the line to the reference plane.
TIP After adding the dimension, click Modify, select the line you want to move, and specify the dimension value.
31 Select the 40 mm dimension. When the lock displays, click the lock to constrain the present value.
TIP If you don’t see the lock icon, zoom out until it displays.
32 Select the 20 mm dimension. When the lock displays, click the lock to constrain the present value.
37 In the Project Browser, under Views (all), expand 3D Views, and double-click View 1.
If necessary, spin the model so you can see the interior of the frame.
5 On the Options Bar, click , and enter - 45 mm for Depth, and select Lock.
6 Place the cursor over the left side of the frame, press TAB to cycle through the selection options, and select
the option, Chain of walls or lines.
■ Click .
■ Enter - 50 mm for Offset.
You specify a negative offset value to indicate an extrusion direction inside of the window frame.
■ Click .
8 Specify the upper left inside corner of the window frame for the first corner of the rectangle, and then
specify the lower right inside corner for the second corner of the rectangle.
12 Proceed to the next exercise, “Creating the Window Glass Solid Geometry” on page 444.
16 On the Options Bar, click , enter -12 mm for Depth, and select Lock.
17 Place the cursor on one of the sash extrusion lines, press TAB until the chain of lines is preselected, and
click to create the glass boundary.
NOTE Assigning subcategories to model elements is important. After the family is loaded into a project, you can
control subcategory visual style using the Objects Styles dialog box.
NOTE After flexing the model, it is important to verify that all model elements adapted to the changes as
expected. For example, make sure the window frame stretched with the opening and that the glass extrusion
remains attached to the interior edge of the sash. You should flex the model at regular intervals to catch problems
early. Most problems can be resolved by aligning and locking lines.
28 Proceed to the next exercise, “Creating the Window Mullion Solid Geometry” on page 449.
Dataset
Continue using the family file from the previous exercise.
Add reference planes to specify the location of the new window mullion centerlines
1 In the Project Browser, under Elevations, double-click Exterior.
2 On the Design Bar, click Ref Plane.
3 Add two horizontal and two vertical reference planes inside of the window opening to approximate the
mullion centerline locations as shown.
NOTE When you draw each reference plane, the exact location is not critical. Precise dimensions are assigned
to the reference planes in subsequent steps.
5 Add a dimension between the top of the window opening (top reference plane) and the horizontal reference
plane below it, as shown. Do not be concerned with dimension values.
6 Add a dimension between the bottom of the window opening (bottom reference plane) and the horizontal
reference plane above it, as shown. Do not be concerned with dimension values.
TIP Due to the length of the dimension label, you may want to drag the dimension value as shown.
14 Click the dimension value, and enter 350 mm as the new value.
After you complete the sketch, notice lock icons display on the interior horizontal edges of the sash.
25 Click both of the locks so the mullion adapts to changes in window height.
29 On the Design Bar, click Modify, and select the dimension you added in the previous step.
30 On the Options Bar, select <Add parameter> for Label.
31 In the Parameter Properties dialog box, specify the following parameters:
NOTE Do not lock the lines to the sash edge as you did previously.
■ Dimension mullion edges and the reference plane at the center of the mullion and click the equality
constraint.
■ Add a dimension between the left and right mullion edges.
■ Select the dimension, and on the Options Bar, select Mullion Width for Label.
Do not be concerned with the value of the mullion width. This is changed in later steps.
35 In the Family Types dialog box, enter 40 mm for Mullion Width, and click Apply.
Notice the mullions remain centered and equally spaced on the reference planes.
Notice the window adapts to the new dimension parameters, and the mullions stretch with the new window
height.
37 In the Family Types dialog box, return the window to its original dimensions:
43 Sketch a rectangle centered on the upper horizontal mullion reference plane approximately as shown, and
then click the lock icons to lock the left and right edges to the edge of the sash.
48 On the Design Bar, click Modify, and select the dimension you added in the previous step.
49 On the Options Bar, select Mullion Width for Label. Move the dimension value as shown.
50 Repeat the previous steps to create an identical mullion centered on the lower horizontal reference plane
as shown. Remember, follow these basic steps:
■ Dimension mullion edges and the reference plane at the center of the mullion and click the equality
constraint.
■ Add a dimension between the upper and lower mullion edges.
■ Select the dimension, and on the Options Bar, select Mullion Width for Label.
55 Adjust the location of the window model within the drawing area, so when you open the Family Types
dialog box, you can still see the window.
56 On the Design Bar, click Family Types.
57 In the Family Types dialog box, do the following:
Notice the window adapts to the new dimension parameters and the mullions stretch with the new window
height.
59 Proceed to the next exercise, “Assigning Materials to the Window Components” on page 461.
Assign the Pine Frame material to the frame, sash, and mullions
TIP Hold the CTRL key down as you select the sweep and various extrusions.
26 Proceed to the next exercise, “Defining New Window Types” on page 464.
Dataset
Continue using the family file from the previous exercise.
4 In addition to flexing the model after the addition or modification of model geometry, it is also a good
idea to flex the model after a new formula is applied.
In the Family Types dialog box, enter 2000 mm for Height, and click Apply.
The window height is doubled, but the one third height spacing is maintained in the horizontal mullions.
5 In the Family Types dialog box, enter 1000 mm for Height, and click Apply.
6 In the Family Types dialog box, under Family Types, click New.
7 In the Name dialog box, enter 2500 w x 1250mm h for Name, and click OK.
8 In the Family Types dialog box, specify the following parameter values:
You now have three new window types defined within your window family.
17 On the Standard toolbar, click to start a new project based on your default template.
18 On the Basics tab of the Design Bar, click Window.
19 On the Options Bar, click Load.
20 In the Open dialog box, navigate to the location of your Training Window.rfa file, select it, and click Open.
Finally, you assign new dimension values to the furniture to create new types within the furniture family, and specify
values for the furniture length and depth.
The reference planes that display are part of the default furniture template; they represent the furniture
centerline axes.
NOTE When you draw the reference planes, their exact location is not critical. Precise dimensions are assigned
to the reference planes in subsequent steps.
7 Draw two horizontal reference planes, one above and one below the existing horizontal centerline reference
plane as shown.
8 Draw two vertical reference planes, one to the left and one to the right of the existing vertical centerline
reference plane as shown.
11 Add an overall horizontal dimension underneath the dimension you just added. It should reference the
left reference plane and the right reference plane as shown.
TIP To do this, select each reference plane and drag the extents to the new position. Afterwards, select each
dimension and drag the witness line controls as needed.
These reference planes will be the skeleton that you snap the solid geometry to. Therefore, you should flex
the design now to ensure the reference planes and labelled dimensions adapt to changes as expected.
29 Adjust the location of the reference planes within the drawing area, so when you open the Family Types
dialog box, you can still see the model.
30 On the Design Bar, click Family Types.
Notice the reference planes adapt to the new dimension parameters. When the solid geometry is snapped
to the reference planes, it will also adapt to the same changes.
32 In the Family Types dialog box, return the parameters to their original values:
33 Proceed to the next exercise, “Creating the Desktop Solid Geometry” on page 475.
NOTE In the image below, the symbolic line thickness was modified for training purposes. Your lines may have
a lighter weight.
15 Move the cursor over the bottom edge of the desktop, press TAB until Extrusion : Shape handle displays in
the Status Bar, and select the bottom edge.
16 Drag the bottom edge of the desktop up until the desktop is 100 mm thick.
19 Add a vertical dimension from the bottom of the desktop to the top edge.
28 Adjust the location of the model within the drawing area, so when you open the Family Types dialog box,
you can still see the model.
29 On the Design Bar, click Family Types.
30 In the Family Types dialog box, do the following:
31 In the Family Types dialog box, return the parameters to their original values:
32 Proceed to the next exercise, “Creating the Desk Drawer Base Solid Geometry” on page 478.
Offset two reference planes to locate the first drawer base corner
1 In the Project Browser, under Floor Plans, double-click Ref. Level.
2 On the Design Bar, click Ref Plane.
5 Move the cursor over the upper horizontal reference plane, and click to locate a new horizontal reference
plane offset 100 mm below it.
8 Add a dimension to the top horizontal reference plane and the offset plane below it. Lock the dimension
as shown.
15 Click both of the lock icons to lock the edges of the extrusion to the reference planes.
TIP You can select multiple elements by holding the CTRL key down. You can also highlight the entire line chain,
using the TAB key.
A duplicate of the left drawer base is mirrored to create the right drawer base.
25 Click the lock icon to lock the extrusion edge to the reference plane.
■ Add a dimension from the right vertical reference plane to the right edge of the drawer base, and then
click the lock icon to lock the dimension.
28 Add two final dimensions, one on each extrusion that references the width of the drawer base, as shown.
29 Select the dimension referring to the drawer width on the left extrusion.
30 On the Options Bar, select <Add parameter...> for Label.
31 In the Parameter Properties dialog box, specify the following:
46 Adjust the location of the model within the drawing area so when you open the Family Types dialog box,
you can still see the model.
47 On the Design Bar, click Family Types.
48 In the Family Types dialog box, do the following:
49 In the Family Types dialog box, return the parameters to their original values:
50 Proceed to the next exercise, “Creating the Rolltop Solid Geometry” on page 487.
10 Select the right vertical edge of the desktop extrusion, then select the right parallel sketch line, and lock
the alignment.
TIP You may need to click the down arrow button, and then select the fillet arc tool from the menu.
15 Select the left vertical sketch line, the upper sketch line, and then move the cursor down and to the right
until you create and arc similar to the image below. Do not be concerned with the precise dimension of
the arc radius.
Align the left and right edges of the rolltop with the drawer bases
20 Select the right edge of the right drawer base, select the right edge of the rolltop, and click the lock icon.
22 Adjust the location of the desk model within the drawing area so when you open the Family Types dialog
box, you can still see the model.
23 On the Design Bar, click Family Types.
24 In the Family Types dialog box, do the following:
The desk should adapt to all the changes. If not, you may need to align and lock problematic edges that
did not remain aligned. You can also use dimension constraints.
26 Proceed to the next exercise, “Creating the Drawers Solid Geometry” on page 493.
Dataset
Continue using the family file from the previous exercise.
NOTE The exact configuration of the rectangles representing the drawer fronts is not critical.
NOTE Adding and locking these dimensions is very important. If you modify the desk length or the drawer base
width, these locked dimension assure that the drawers flex as expected. If you cannot see the locks on the
dimensions, zoom the view until you do.
14 On the Tools toolbar, click , and repeat the previous step by selecting the right vertical lines of the
drawer set on the left.
21 Draw a pick box around the entire desk to select all the extrusions.
23 In the Element Properties dialog box, under Materials and Finishes, click for Material.
24 In the Materials dialog box, click Duplicate.
25 In the New Material dialog box, enter Desk - Wood, Cherry, and click OK.
32 Adjust the location of the desk model within the drawing area so when you open the Family Types dialog
box, you can still see the model.
33 On the Design Bar, click Family Types.
34 In the Family Types dialog box, do the following:
The desk should adapt to all the changes. If not, you may need to align and lock problematic edges that
did not remain aligned. You can also use dimension constraints.
35 In the Family Types dialog box, return the parameters to their original values:
36 Proceed with the final exercise in this lesson, “Defining New Furniture Types” on page 496.
13 On the Standard toolbar, click to start a new project based on your default template.
You now have three new rolltop desks based on the new rolltop desk furniture family prototype. This completes the
Creating a Furniture Family lesson.
Drawing a Baluster
In this exercise, you draw a baluster with an extrusion.
The reference planes that display are part of the default baluster template. The bottom of the baluster is at
the reference level and the baluster has an assigned default height of 750mm. Top and bottom cut angles
for the baluster are also displayed.
3 In the Project Browser, expand Views (all), expand Floor Plans, and double-click Ref. Level.
NOTE When you draw the closed profile lines and arcs, their exact location is not critical. However, the baluster
profile should be centered on the vertical and horizontal reference planes. Draw your profile approximately
30mm wide by 60mm deep.
15 Save the new baluster family with the name Training Baluster.rfa.
The new custom baluster is now complete.
12 On the Design Bar, click Modify and select the existing railing.
NOTE When you draw the closed profile lines and arcs, their exact location is not critical. However, the sweep
profile should begin at the reference plane intersection.
2 Starting at the reference plane intersection, draw the sweep profile with line and arc segments as shown.
3 Save the new profile family with the name Profile - Sweep.rfa.
The new sweep profile is now complete.
NOTE When you draw the closed profile lines and arcs, their exact location is not critical. However, the top of
the rail profile should coincide with the rail top reference plane.
3 Starting at the reference plane intersection, draw the rail profile with line segments as shown.
4 Save the new profile family with the name Profile - Rail.rfa.
The new rail profile is now complete.
Create a new family based on the default stair nosing profile template
1 Notice the existing planes and text provided within the template.
The reference planes that display are part of the default stair nosing profile template, with the vertical
reference plane labeled as the riser face and the horizontal reference plane labeled as the tread surface.
Additional text specifies the lower-left quadrant as the location for the stair nosing.
NOTE When you draw the closed profile lines and arcs, their exact location is not critical. However, you must
draw the stair nosing in the lower-left quadrant. In addition, the top of the stair nosing profile should coincide
with the tread surface reference plane and the right edge of the stair nosing profile should coincide with the
riser face reference plane.
3 Starting at the reference plane intersection, draw the stair nosing profile with line and arc segments as
shown.
4 Save the new profile family with the name Profile - Stair Nosing.rfa.
The new stair nosing profile is now complete.
NOTE When you draw the closed profile lines, their exact location is not critical. However, the left edge of the
reveal profile must coincide with wall face reference plane and the reveal must be drawn within the wall body
(to the right of the wall face reference plane).
3 Starting at the reference plane intersection, draw the reveal profile with line segments as shown.
4 Save the new profile family with the name Profile - Reveal.rfa.
The new reveal profile is now complete.
Create a new family based on the default host sweep profile template
1 In the Project Browser, under Floor Plans, verify that Ref. Level is open.
NOTE When you draw the closed profile lines, their exact location is not critical. However, the left edge of the
host sweep profile must coincide with the host face reference plane, and the host sweep profile must be drawn
outside of the host body (to the right of the host face reference plane).
3 Starting at the reference plane intersection, draw the reveal profile with line and arc segments as shown.
4 Save the new profile family with the name Profile - Host Sweep.rfa.
The new host sweep profile is now complete.
6 On the Family tab of the Design Bar, click Solid Form ➤ Solid Sweep.
7 On the Design Bar, click Sketch 2D Path.
NOTE When you sketch the 2D path, the exact location of the path is not critical.
8 On the Design Bar, click Lines and sketch the 2D path approximately as shown.
16 In the Project Browser, expand Views (all), expand Elevations, and double-click South.
20 Select the sweep profile and, on the Options Bar, click Edit.
21 Select the sweep profile again and, on the Options Bar, click .
22 In the Element Properties dialog box, do the following:
23 Click OK.
24 On the Design Bar, click Finish Family.
6 On the Modelling tab of the Design Bar, click Host Sweep ➤ Wall Sweep.
7 On the Options Bar, verify that Horizontal is selected.
8 Select a point on the left wall for the wall sweep.
9 Select a point on the right wall for the next wall sweep.
Replace the default wall sweep with the new host wall sweep
The default wall sweep is replaced with your host sweep profile.
The reference planes that display are part of the default room tag template.
15 In the Select Parameter dialog box, select Name, and click OK.
16 Zoom in on the label.
20 Specify a point below the Floor Finish label for the next label location.
21 In the Select Parameter dialog box, select Ceiling Finish, and click OK.
22 Specify a point below the Ceiling Finish label for the last label location.
23 In the Select Parameter dialog box, select Area, and click OK.
24 Save the new room tag with the name Finish Area Tag.rfa.
The new room tag is now ready for use.
Create a new annotation symbol based on the default generic annotation template
1 In the Project Browser, notice that there is only one view available.
The reference planes that display are part of the default generic annotation template. Notes included with
the template specify annotation parameters.
8 Draw a vertical line from the top to the center point of the circle.
9 Draw a vertical line from the center point to the bottom of the circle.
15 On the Design Bar, click Modify, and select the upper vertical line.
16 In the Type Selector, select North Line.
17 On the Design Bar, click Modify.
19 Save the new north arrow with the name, Training North Arrow.rfa.
The titleblock has linework, text, and labels. You customize the titleblock with a new text style, graphics, and your
project data.
10 Draw a horizontal line 120mm below the last horizontal line as shown.
12 On the Design Bar, click Modify, press CTRL, and select the second and third horizontal lines.
13 In the Type Selector, select Wide Lines.
14 Zoom in on the lower right corner of the sheet.
15 On the Design Bar, click Lines.
16 In the Type Selector, select Title Blocks.
17 On the Design Bar, click Modify, and select the last text note.
18 Select the drag handle, and drag the text note down as shown.
■ Consultant:
■ Address:
■ Address:
■ Telephone:
22 On the Design Bar, click Modify, and select the consultant text note.
26 Move the cursor down 120mm and click to specify the first copied text note position.
27 Move the cursor down another 120mm and click to specify the second copied text note location.
43 In the Select Parameter dialog box, select Project Issue Date, and click OK.
The label displays a default value wrapped to 3 lines.
44 Select the left drag handle on the label, and drag to the left until the label displays on one line.
NOTE Move the label if necessary to line up properly with the existing text.
NOTE Move the label if necessary to line up properly with the existing text.
47 Place the cursor at the lower right corner of the Checked By field, and click to specify the label location.
48 In the Select Parameter dialog box, select Checked By and click OK.
NOTE Move the label if necessary to line up properly with the existing text.
63 Place the cursor near the center of the field above the Project Number field, and click to specify the label
location.
64 In the Select Parameter dialog box, select Project Name, and click OK.
65 Select the left drag handle on the label, and drag to the left until the label displays on one line.
66 Place the cursor near the center of the field above the Project Name field, and click to specify the label
location.
67 In the Select Parameter dialog box, select Client Name, and click OK.
68 Select the left drag handle on the label, and drag to the left until the label displays on one line.
81 Save the new titleblock family with the name Training A0Horizontal Titleblock.rfa.
The titleblock graphics, text, and labels are now complete.
14 Click OK.
NOTE This project was created using an imperial template and components. To change the units of measurement to meters,
on the Settings menu, click Project Units. Set the Length units to millimeters, set the Area to Square meters, format the Area
to use 2 decimal places, and set the suffix to None.
2 In the Project Browser, expand Views (all), expand Elevations, and double-click South.
10 In the Go To View dialog box, select Section: Wall Section - Center, and click Open View.
Draw the axis of rotation for the dome roof revolved form
The circle is tangent to the interior wall face and the level 1 reference plane at the floor line.
The reference planes that display are guides for drawing the oculus rim profile.
21 Snap to reference plane intersections, and draw the five rim profile line segments in the shape of a reverse
C as shown.
25 Select the intersection of the circle and the lower left vertical line of the profile as shown.
The circle is trimmed between the rim profile and the first split point.
37 In the Element Properties dialog box, under Materials and Finishes, click for Material.
38 In the Materials dialog box, select Concrete - Cast-in-Place Lightweight Concrete for Name, and click OK.
39 In the Element Properties dialog box, click OK.
40 On the Design Bar, click Finish Sketch.
41 On the Design Bar, click Finish Family.
9 In the Go To View dialog box, select Section: Wall Section - Center, and click Open View.
NOTE You may need to zoom in closer to the intersection to select the first point.
16 Drag the cursor up 800 mm, and specify the next point for the floor profile as shown.
17 Specify the intersection of the level 1 reference plane and the interior wall edge for the next point of the
floor profile as shown.
you learn the process and methodology of creating a new family. In exercises that become increasingly
complex, you learn specific techniques and best practices that you can apply broadly when creating other
The parametric component that you design in this tutorial is an open web wood floor truss. In this case,
the length of the trimmable truss determines the size and grade of the truss chords. In the center of the
truss is a mechanical service clearance to accommodate HVAC systems. The truss also has multiple types,
formula-based parameters, assigned subcatecories, and detail level controls. This type of component uses
The goal of this tutorial is to teach you the proper approach to parametric component creation, not
specifically how to make a floor truss. At the end of this tutorial, you will understand the process,
539
Planning a Parametric Component Family
Creating a new parametric component family is no different than any other design process; planning ahead is one of
the most important steps. Knowing why you are creating a particular family and what you need it to do will drive the
specific design process. In this lesson, you accomplish two main tasks: you determine the component needs and select
the family template that is suited to those needs.
2 What additional design requirements affect the design plan for this beam family?
The design requirements dictate how simple or complex a family must be. In this case, the beam design
must be advanced in order to have the flexibility that the specs require.
NOTE When creating a new family, you should avoid over-designing the component. If the design requirements
can be met with a simple design, then you should design only what is needed to satisfy the requirements. For
every complexity added to a family, there is a computing performance cost that must be paid within the project.
Take this into consideration during your design planning.
You have completed the planning stage for the new family. Depending on the family you are designing,
the planning stage and questions may differ.
4 Continue with the next exercise, “Selecting the Family Template” on page 541.
3 In the left pane of the New dialog box, click Training Files, and open Metric\Templates.
4 Scroll through the various template options.
Notice that most of the template names include the component type. In addition, the template name often
includes information how the component would be used with a project, for example: wall based or floor
based.
NOTE Do not double-click the template or open it. Select it so that the preview displays.
On the right side of the New dialog box, notice the preview.
Like most generic family templates, it provides two intersecting reference planes: Center (left/right) and
Center (front/back).
7 Select Metric Structural Framing - Complex and Trusses.rft, and notice the preview.
Although the template name suggests this is the appropriate template, it is not the best starting point for
the beam family.
8 Select Metric Structural Framing - Beams and Braces.rft and notice the preview.
Notice this template offers three vertical planes on each side of the center (left/right) reference plane. These
planes are designed specifically to accommodate point-to-point beam insertion and the special snapping
and display requirements of beam components. This template is the best starting point for the new family.
This beam extrusion is supplied within the template as a starting point. Like many templates, the geometry
supplied can be used or discarded as needed.
13 Proceed to the next lesson, “Creating the Component Skeleton” on page 544.
NOTE When creating or modifying a family, it is not necessary to create a skeleton of reference planes or lines and then align
and lock the solid geometry to it. Dimensioning the solid geometry directly also works; however, using reference planes and
lines is considered more reliable and is therefore a best practice.
Dataset
Continue to use the dataset you started in the previous exercise.
3 Repeat this step for the other two vertical planes on the left side.
NOTE The reference planes shown in the project image below were added as a training reference. Reference
planes that display within a family file do not display within a project.
Each family template has a different set of reference planes established within it. Before adding new reference
planes, it is important to be familiar with the template so you do not create duplicate or conflicting planes.
8 Add a reference plane approximately 50 mm below the horizontal reference plane: Center (Front/Back).
You will use these two reference planes to control the beam width and keep it centered on the reference
plane: Center (Front/Back).
12 Add a reference plane approximately 150 mm above the Level: Ref. Level.
TIP You can also use the mirror tool to accomplish this task. To do this, select the lower horizontal reference
plane, click on the Edit toolbar, and select the Level: Ref. Level as the mirror axis.
These two reference planes mark the top and bottom extents of the beam. This beam requires additional
reference planes to complete the truss skeleton.
15 Place the cursor over the top horizontal reference plane. When a copy of the reference plane displays below
it, click to place it.
TIP You can control the direction of the offset by moving the cursor slightly to either side of the line you intend
to pick.
17 Place the cursor over Reference Plane: Member Left, and when a copy of the reference plane displays to
the right of it, click to place it as shown.
18 Place the cursor over Reference Plane: Member Right, and when a copy of the reference plane displays to
the left of it, click to place it as shown.
You have completed the reference planes that make up the skeleton of the chords. Before you move on to
the next exercise, you must add four additional reference planes to accommodate the center chase.
21 Place the cursor over Reference Plane: Center (Left/Right), and when a copy of the reference plane displays
to the right of it, click to place it as shown.
NOTE You use this family for the remainder of this tutorial. Make sure you remember where you saved it.
28 Proceed to the next exercise, “Adding Dimensions and Constraints” on page 550.
Dataset
Continue to use the dataset, Wood Floor Truss.rfa, that you saved at the end of the previous exercise.
3 Select each of the horizontal reference planes and place the dimension to the left as shown. After adding
the dimension, separate the overriding values by dragging the value controls as shown.
11 Add a dimension referring to the upper horizontal reference plane and the lower horizontal reference plane
and move it to the left of the equality constrained dimension you added previously.
12 Add a dimension referring to the three vertical reference planes in the center of the model, place the
dimension under the lines as shown and click the EQ symbol to apply the equality constraint.
13 Add a dimension referring to the reference planes to the left and right of the Center (Left/Right) reference
plane, and place it below the dimension you added previously.
You have finished adding the dimensions and constraints that control how the truss skeleton adapts to
changes. Throughout the tutorial, you will add additional reference planes, dimensions, and constraints
as needed.
In the next exercise, you label the dimensions to create instance and type parameters. These parameters
are the key to providing flexibility within a project. In addition, they allow you to “flex” the model in
order to test your design.
■ If the component comes in standard sizes that must be maintained, consider making it a type parameter.
■ If the component is something that is cut or otherwise extremely flexible, consider making it an instance parameter.
■ If the component has material that varies per component, consider making the material parameter an instance
parameter.
■ If the parameter controls something that usually remains constant by its nature, consider making it a type parameter.
You should lean towards simplicity whenever possible.
Dataset
Continue to use the dataset, Wood Floor Truss.rfa, that you saved at the end of the previous exercise.
■ Click OK.
9 Select the dimension that refers to the width of the center chase interior.
12 On the right side of the model, select the dimension that refers to the thickness of the lower horizontal
truss chord as shown.
TIP You may need to drag the text label downward as shown.
15 On the right side of the model, select the dimension that refers to the thickness of the upper horizontal
truss chord.
16 On the Options Bar, select Chord Thickness for Label.
19 Click Cancel.
20 On the File menu, click Save.
21 Proceed to the next exercise, “Flexing the Component Model” on page 557.
When you flex a family, you should always do it from the Family Types dialog box, rather than by manually stretching
or manipulating the objects within the family. When you change a parameter value and apply the change, this is the
most accurate way of testing how the family will behave within a project.
In this exercise, you flex the model to test the various length parameters that you added in the previous exercise. Even
though you have yet to add any model geometry to the family, it is important to verify that the reference lines adjust
to changes as constraints are maintained. After you verify this, you can add the model geometry to the skeleton and
be relatively certain that it will also flex as expected.
Dataset
Continue to use the dataset, Wood Floor Truss.rfa, that you saved at the end of the previous exercise.
■ Maximize the Revit window and adjust the zoom settings so the model is in one corner of the drawing
area. When you open the Family Types dialog, you can drag it to the opposing corner.
or
■ Reduce the Revit window and keep the model centered in the drawing area. When you open the Family
Types dialog box, you can drag it off the Revit window as shown.
Adjust your display using one of the two methods before opening the Family Types dialog box.
2 On the Design Bar, click Family Types, and drag the dialog box so that you can view the model.
3 In the Family Types dialog box, under Dimensions, enter 600 mm for Depth, and click Apply.
4 Enter 450 mm for Depth, 80 mm for Chord Thickness, 800 mm for Center Chase Width, and click Apply.
Notice that the model adapts to all of the changes.
Reset parameters
5 In the Family Types dialog box, reset the parameters back to their original values:
9 Select perpendicular intersecting lines to create the top chord sketch as shown.
NOTE A warning dialog displays notifying you that there are overlapping lines. You can ignore this warning
because after you finish trimming, the lines will no longer overlap.
4 Drag the right arrow control to the right until it snaps to the reference plane: Member Right, as shown.
Click the lock symbol to lock the extrusion edge to the reference plane.
6 Prepare the view for flexing in the same way you did during the flexing exercise. You’ll want to set up your
screen so you can see the model truss while the Family Types dialog box is open.
On the Design Bar, click Family Types.
7 In the Family Types dialog box, enter 6000 for Length, and click Apply.
Notice that the extrusions did not move or change their length. This is because the length dimension
references the extreme left and right reference planes, not the member right or member left reference
planes. Therefore, you must add a new constraint before flexing the length.
8 In the Family Types dialog box, enter 3000 for Length, click Apply, and click OK.
In this particular case, adding this constraint to the model has no impact on how it works within a project.
This is a two-point placement beam family that uses the member left and member right reference planes
as the determining extents of this component. Later in this lesson, you load this family into a project to
test how it works within a project environment.
TIP If one of the extrusion ends did not adjust as expected, use the Align tool and add the constraint. Afterwards,
flex the model once again to make sure the fix works as expected.
14 Click OK.
TIP When flexing, it is important to remember the original values so you can reset them afterwards. Therefore,
try picking a method, such as doubling, that allows you to easily return to the original values.
■ Click Apply.
Dataset
Notice that the sketch lines are automatically locked to the reference planes.
19 For the align-to reference, select the reference line on the top of the lower chord as shown.
You may need to press TAB to toggle the selection options.
21 Align the top edge of the chase extrusions with the reference line coincident with the lower edge of the
upper chord, and lock the alignment as shown.
The truss should adapt to all the changes. If it does not, redo any problematic alignments and constraints.
26 Zoom to Fit.
31 Select the Chord Thickness dimension in the lower-right corner of the view.
32 On the Options Bar, select Trimmable End Length for Label.
33 On the Design Bar, click Family Types.
34 In the Family Types dialog box, under Dimensions, enter 300mm for Trimmable End Length, click Apply,
and click OK.
NOTE This extrusion value must be negative in order to push the extrusion towards the center of the truss.
Although the truss ends line up with the reference planes controlling the length of the trimmable ends,
they are not aligned and locked to those reference planes and would not pass a flex test.
67 Select the left edge of the left end extrusion, and lock the alignment.
70 Repeat the previous five steps for the right end of the truss. Make adjustments to account for the right side.
TIP When you finish the alignments, if you select the end extrusion, a lock displays on each side indicating the
constraints to the reference planes.
The truss should adapt to all the changes. If it does not, fix any problematic alignments and constraints.
77 Proceed to the next lesson, “Testing the Family in a Project” on page 574.
NOTE Close any open families or projects. The truss family that you use in this lesson is identical to the truss you have created
in the previous exercises. Although you could continue using the previous family, it is recommended that you use the new
family in order to ensure consistency.
Datasets
3 In the Project Browser, expand Families, expand Structural Framing, and notice that the Wood Floor Truss_1
family has been loaded.
4 Proceed to the next exercise, “Testing a Family Instance in a Project” on page 575.
This project consists of foundation walls, a slab, a wood sill, and a wood rim joist. The rim joist was added
as a beam; therefore, the truss family you loaded will interact with it as one beam does to another.
TIP If the Structural tab of the Design Bar is not active, right-click in the Design Bar, and click Structural.
NOTE Do not be concerned with the exact location of the three beams. Try to make them approximately
equidistant as shown.
Notice the wood truss sits on top of the sill and attaches to the rim joist as expected.
NOTE Make sure you drag the grid line, not the wall or rim joist. You do not need to be precise; you are merely
testing the new floor truss to verify that it adapts to the changes.
■ The truss ends remained constant and adapted to the new beam length.
■ The center chase remained the same width while remaining centered.
In the next lesson, you nest the web components into the truss and create an array that adapts to changes
in length.
IMPORTANT Do not change the name of the family. The project and family need to interact based on a
consistent file name.
16 Proceed to the next lesson, “Working with Nested Subcomponents” on page 579.
■ In the left pane of the Open dialog box, click the Training Files icon.
■ Open the m_Wood_Web.rfa file located in the Metric\Families folder.
IMPORTANT Make sure you snap the center line of the web components to the center reference line of the
truss.
Notice the model lines that surround the web component; they are visible only when you place the cursor
over the component. In the following steps, you align the web panel using these lines rather than the
extrusion edges.
Also notice that the depth of the web members needs to be changed. This will be accomplished in the next
exercise when you link the nested parameter with the host parameter.
13 For the align-to point, select the reference plane that is coincident with the left edge of the left center chase
extrusion.
15 Repeat the previous two steps to align the left edge of the right web component to the right edge of the
center chase as shown.
Each of these web components represents the starting point of the web arrays that you add later in this
lesson.
NOTE You do not have to align the top or bottom the web components because the height of the web members
will adapt to the truss height after you create and link the parameters in the next exercise. In addition, it is
important to note that you should avoid adding unnecessary constraints.
20 Select the center of the left web component as the align-to point.
21 Select the reference plane that you added to the left of the web components center as shown.
22 Click the lock to lock the reference plane to the centerline of the web component.
23 Repeat the previous two steps to align and lock the right web component and the reference plane as shown.
■ Select the reference plane that you aligned to the center of the left web component.
■ Select the reference plane that is coincident with the right edge of the left web component and the
outside edge of the center chase.
■ Place the dimension as shown.
■ Select the reference plane that you aligned to the center of the right web component.
■ Select the reference plane that is coincident with the left edge of the right web component and the
outside edge of the center chase.
■ Place the dimension as shown.
In the next exercise, you label these dimensions. You also add a formula to the parameter in order to
maintain the web position as the truss changes depth, length, or the width of the center chase.
4 In the Family Types dialog box, under Constraints, enter Depth - (Chord Thickness * 2) for the WebDepth
Formula.
TIP You can expand the width of the Family Types dialog box to facilitate typing within the formula field.
This formula ensures that the web depth will account for any changes in the chord thickness or truss depth.
NOTE Formulas are case sensitive. When you refer to another parameter within a formula, ensure you enter it
exactly as it is named.
5 Click OK.
9 In the Associate Family Parameter dialog box, select WebDepth, and click OK.
In the Type Properties dialog box, notice that “= “displays within the WebHeight button.
Notice the web members are resized to fit more precisely between the chords. In addition, notice the center
of each nested web component is locked to the reference plane that bisects it.
16 Under Other, enter Center Chase Width + (2*Chord Thickness) for CC Formula.
After you enter the formula, the resulting value is displayed as an inactive field.
24 Select the dimension that refers to the midpoint of the left web as shown.
27 Select the dimension that refers to the midpoint of the right web.
28 On the Options Bar, select Webhalflength for Label.
29 On the Design Bar, click Modify.
Because you have added and constrained new components, it is very important that you flex the model
to ensure the nested components and the formulas that controls them work as expected. It is especially
important to flex the model before arraying the truss so that you don’t multiply any existing problems.
41 Adjust the view so you can flex the truss while in the Family Types dialog box.
42 On the Design Bar, click Family Types.
43 In the Family Types dialog box, specify the following:
The truss should adapt to all the changes. If it does not, fix any problematic alignments and constraints.
5 Select the bottom-right corner of the nested web extrusion as the move start point. When picking the
corner, use the TAB key to toggle to the endpoint of the vertical model line within the nested family.
12 Select the bottom-left corner of the nested web extrusion as the move start point. When picking the corner,
use the TAB key to toggle to the endpoint of the vertical model line within the nested family.
13 Select the bottom-right corner of the nested web extrusion as the move end point. When picking the
corner, use the TAB key to toggle to the endpoint of the vertical model line within the nested family.
Because there are two overlapping lines at this location, you are aligning the two bordering web components
to each other.
20 Click the lock symbol to keep the web components locked at their edges.
21 Within the left array, align and lock the two right web components.
22 Within the right array, align and lock the two boundaries between the three web components. Use the
same techniques as you did in the previous three steps.
NOTE This step is very important. If you do not lock the edges of the array, the web components overlap each
other when you change the depth of the truss.
Notice the arrays appear to be too long. This is because earlier in the tutorial, you added a dimension to
lock the Member Left and Member Right reference plane to the outer Left and Right reference planes. The
primary reason for this was to allow for flexing the length.
Notice the end of the array still overlaps the trimmable end. You will fix this in later steps by changing
the parameter value.
45 In the Project Browser, under 3D Views, double-click View 1, and prepare the view for flexing.
46 On the Design Bar, click Family Types.
47 In the Family Types dialog box, specify the following:
The truss should adapt to all the changes. If it does not, fix any problematic alignments and constraints.
You have completed the design of the primary components of the truss.
9 Proceed to the next lesson, “Applying Subcategories, Materials, and Parameters” on page 595.
4 On the Structural Framing category line, click in the material field until the button displays as shown.
When you apply a material to the Structural Framing category, all subcomponents of that category are
assigned that material. If there was a metal beam in this building model, it would also have the wood
material applied to it. If you create subcategories as you design in the Family Editor, you have more control
over component visibility within a project.
15 Click in the Material field for the Wood Floor Truss subcategory, and click the button to open the Materials
dialog box.
16 In the Materials dialog box, click Duplicate.
17 In the New Material dialog box, enter Wood Floor Truss, and click OK.
28 Place the cursor over one of the arrayed web components, press TAB to toggle to the web component and
click to select it.
29 On the Options Bar, click Edit Family.
30 Click Yes to open the family for editing.
The web component family opens in a 3D view.
52 Click OK.
53 On the View menu, click Visibility/Graphics.
54 In the Visibility Graphics dialog box, under Visibility, expand Structural Framing, clear Wood Floor Truss
- Webs, and click OK.
Notice the web extrusions not longer display; however, the stick symbols continue to display.
7 In the Family Types dialog box, notice the default material is By Category.
8 Click OK.
Datasets
26 On the View Control Bar, click Detail Level, and click Medium.
Notice the floor truss solid geometry is displayed.
NOTE When creating new components, create types for those most frequently used in your projects.
11 Click OK.
5 In the Family Types dialog box, under Dimensions, enter the follow formula for Depth:
if(Length < 6600, 286, if(Length < 7500, 350, if(Length < 9000, 400, 400)))
6 Click Apply.
7 In the Family Types dialog box, enter 8000 for length, and click Apply.
Notice the truss depth increases.
8 In the Family Types dialog box, enter 6000 for length, click Apply, and click OK.
NOTE You would have to change the depth of the sill and rim joist to accommodate this change.
IMPORTANT When you changed the width of the building footprint, you probably noticed a change in the
amount of time the view needed to regenerate. Regeneration time and overall performance can be affected by
over-designed families.