For more articles in creating complex family shapes in Revit, please check out my blog space at:
BIM. After Dark.Vol. 3

A product review by Michael Anonuevo


If you’re an experienced or beginner Revit user, you must have come across, a great website for all things Revit. The site was established in 2009 by Jeff Pinheiro, architect, Revit guru, and adjunct professor at the University of Hartford. Over the years, Jeff has produced thousands of blogs, tips, and tricks pertaining to Revit modeling. If you’ve ever encountered a unique Revit problem, chances are, he has written a solution for it in one of his blogs. In 2013, he started and produced the BIM. After Dark video tutorial series.  These are reference video tutorials designed to help users improve their Revit skills and consists of:

  1. BIM. After Dark Vol. 1: In this volume, Jeff teaches you how to create professional and stunning presentations from your Revit BIM model
  2. BIM. After Dark Vol. 2: The highlight of this volume is learning how to create construction documents from your Revit BIM model.

In January of this year, he released BIM. After Dark Vol. 3

In this volume, Jeff teaches you how to create simple to complex Revit families. I’ve had a chance to watch all the video tutorials presented in this volume. In this article, I’ll explain the contents and highlights of each video.

The Videos

As in BIM. After Dark (B.A.D.) previous releases, this latest volume is offered in 3 packages. They all contain 15 video tutorials but differ in the extras offered in each package. Here are the video tutorials, including my comments:

01    The Lack Table

In this video, Jeff starts with a simple table from Ikea.

For beginners or those transitioning to Revit, this first tutorial explains all the basic setup and tools you will be using to create simple parametric Revit families. The neat thing about this video (and the rest of the videos) is that Jeff explains it as if he is right beside you. It is unrehearsed and you get a glimpse of how he approaches family creation. He videotaped the process live and without a script. As you watch him do his stuff, you get to see his methodology _and even his mistakes! This to me is important. In reality, when you start creating families, you will come across error messages or techniques that don’t work. So how do you solve these problems? In his videos, you’ll witness how Jeff attempts to solve error messages by trying out different techniques and approaches. I don’t think you’ll find other video tutorials that teach you how to get out of a Revit problem. He does, and explains to you why certain things work and others don’t.

The Ikea Lack table is easy enough for those who are new to Revit. This tutorial consists of:

  • The use of Furniture template
  • Establishing reference planes
  • The keyboard shortcuts he use
  • Adding simple parameters
  • Suppressing zeros in dimensions
  • How to make a component grow from the center
  • Mirroring
  • Equality constraint
  • Creating a material parameter
  • Creating different types of the same family
  • Explanation of Instance versus Type parameters

02    Kitchen Pass Through Window with Molding

In this second tutorial, Jeff chose a kitchen pass through window with molding. The family is a little bit more complicated than the Ikea table as he explains how to create a parametric family with a hole that cuts through a wall. He chose a generic wall based template to demonstrate how to create this family. As you will notice when he starts a family, he goes through his standard setup process which includes:

  • Establishing reference planes, changing the scale, creating the basic dimensional parameters, EQ constraints, etc.

This tutorial consists of:

  • The use of the Opening tool versus a void
  • Using a generic wall based template
  • Changing the category of a family
  • Using a sweep form to create the molding
  • The use of Pick Edges in a sweep form
  • Solved an error during the family creation process
  • Locking a parameter within the Family Types dialog box
  • Created the window sill using the Blend tool
  • The use of symbolic lines
  • The use of the Control tool

03    Double Hung Window Grids

The highlight of this tutorial is the use of a nested family inside another family. In this case, they’re the adjustable grids that divide the glass of the top and bottom parts of a double hung window. The tutorial includes:

  • Nesting families
  • Creating conditional parameters
  • Creating a material parameter
  • Using instance parameters so that when the nested family is loaded in a project, they display with blue grips that can be stretched
  • Associating the parameters of the nested family in the main family

04    Complex Bookcase

This tutorial features a different approach to creating family components. Instead of creating the frame of the bookcase with extrusions, a void was used to carve out the space where the shelves were placed. The shelf is a nested parametric family. The tutorial includes:

  • Visibility parameter
  • Array parameter function
  • Conditional formula to drive the Depth parameter 
  • Conditional formula that spaces the shelves equally as the Height and Width are changed and as the number of shelves are specified.

04.1  Complex Bookcase - Shared Parameters

If you ever wondered what shared parameters are and how they are created, this simple tutorial will explain it. Using the previously created Complex Bookcase family, Jeff demonstrates how easy it is to create shared parameters that will let you tag the family in a project and schedule them.

05    Line Based Detail Component

In this tutorial, Jeff dissects how the Autodesk Plywood Section detail component was created. Detail components are the 2D elements you use to fill up enlarge portions of your Revit model.

06    Line Based Book Case

The family creation concept here is the same as the previous Line Based Detail Component. However, instead of generating a detail component, a parametric 3D family of the previously created bookcase is created. Therefore in plan view, you place the family as if you’re drawing a line, the length of which is the length of the bookcase. The tutorial features:

  • Nested bookcase loaded in a Generic model line based template
  • Parameters of the bookcase associated into the new family so that width, depth & no. of shelves can be changed
  • Arrayed bookcase
  • Conditional formulas

07    Constant Slope Rigging - Rigid Insulation

This tutorial explains how to create a line based constant sloping rigid insulation detail (with slope/min thickness). It features conditional trigonometric formulas including:

  • Angle:  atan(slope/12)
  • Height (Pythagorean theorem): Length*tan(Angle)

The formula keeps the angle constant (height adjusts accordingly) as the length is being changed. The slope can be changed too.

08.1  Adjustable Door Swing - 2D

In this tutorial, Jeff demonstrates how to create a 2D parametric door swing and includes:

  • Lesson about angular parameters (symbolic lines)
  • Nested door with swing
  • Conditional formulas to circumvent breaking of parameters when door is set to 90, 0, or 180 degrees
  • Explains conditional formulas and how they are created logically

08.2 - Adjustable Door Swing - 3D

As the title of the tutorial implies, this is a 3D version of a parametric door swing. What is interesting to note here is the unorthodox use of a Revolve component to drive the swing of the door. Basically, the front work plane of a revolve (with its start and end angle changed) is where the door extrusion is modeled. You have to check this out!

09    Creating a Type Catalog

The advantage of a type catalog is that only the variations of the family you need are loaded, instead of loading all the types. This tutorial explains the process of creating a type catalog.

10.1   Countertop and Faucet

The image above is a photo taken from a toilet fixture manufacturer. In this tutorial, Jeff demonstrates how to model it and its fixtures. Jeff replicates the countertop in the family editor, including the corner fillets and curves, thereby resulting in a realistic looking family. This tutorial includes:

  • MEP connectors
  • Numerous options to solve parameters that break or don’t display the right result

10.2   Countertop and Faucet

Yes, Jeff demonstrates how the faucet fixture above was modeled in the family editor! A must tutorial for all users.

10.3       Countertop and Faucet

In this part 3 of this bathroom component, Jeff creates a symbolic representation of the countertop and faucet. The tutorial includes:

  • Visibility settings
  • Symbolic lines, masking regions

11.    Custom Curtain Wall Panel - Awning Window

This tutorial explains the process of creating a custom parametric curtain wall panel using the Curtain Wall Panel template. It includes the use of model lines as awning symbol visible in elevation and 3D views.

12.    Adaptive Roof Canopy

The highlight of this tutorial is showing you how easy it is to use massing components to create adaptive components (see image above). Adaptive components can be placed at any location in the project _in the numerical order specified during the family creation process. By making the canopy endpoints adaptive, its shape can be skewed or distorted in any direction inside the project. Therefore, the form (in this case, the canopy) follows or adapts to the location of the relocated endpoints. Confused? Buy the DVD!

13.    Adaptive Roof Cricket

The same concept used in the previous tutorial is employed here to create a useful adaptive roof cricket. This is a must for users who model complex roof systems.

14.    Adaptive Repeater Canopy

This tutorial explains a variation of the adaptive roof canopy explained in tutorial #12 (Adaptive Roof Canopy). As the name implies, it features a Repeater function used in the creation of the components that go inside the canopy.
Basically, a repeater is an adaptive component that is brought inside another adaptive component. Once loaded in the host family, the nested adaptive component snaps to the nodes of the host. After loading the family in a project, the canopy displays with the patterns created with the Repeat command.

15.    Funky Facade with Adaptive Repeaters

In this tutorial, the same technique used in the previous lesson is employed to create a repeating component that fills in the divided surfaces of two surfaces: one on a zero plane and one on an organic shaped surface. Buy the DVD to learn how to do this!

BONUS: Modifying RevitCity Family

We all have this experience when we download certain free families from Revitcity _a family without any parameters. In this bonus tutorial, Jeff shows you how to embellish and add parameters to them.


Using Revit is an ongoing learning process. There is so much to learn and absorb even though you’ve been using the program for years. By watching these videos, I’ve learned new techniques that I’ve never used before. This product is a must for Revit users of all levels which I highly recommend.