You are on page 1of 18

Custom Stairs and Railings in Revit Architecture

Eric Wing – IMAGINiT Technologies

AB400-1 In this session, students will learn how to create families for posts,
balusters, panels, railings, and stair nosing. Focusing on design for high-end commercial
and residential projects, this class will dive directly into the use of the family Editor to
physically build the components needed. Once the families are established, the class will
move to Assembly in the project to expose the difficulties designers face. The commercial
portion of the class will cover extruded steel with glass panels; the residential portion will
cover custom handrails and raised panels. You’ll also learn how to design winding and
spiral staircases, as well as to create custom materials with wood hatching that you can
apply to the stair components to give the stairs and railings your personal touch.

About the Speaker:

Eric Wing is an Autodesk Revit / MEP ICE Applications Engineer for IMAGINiT Technologies. He has a
degree in Architectural Engineering and his own architectural millworking consulting business. He has
seventeen years industry experience working as a foreman for construction companies and as a CAD
manager / designer for architectural millworking and structural engineering firms. He has been teaching
Autodesk products for the past 8 years, having no less than 15 students in his sold-out classes. Eric is a
knowledgeable, lively, and popular presenter; a columnist with a loyal reader base for AUGIWorld Magazine
and AUGI’s HotNews; and the Director of the AUGI Training Program (ATP), along with being the AUGI
survey facilitator.

Please feel free to email Eric at

Custom Stairs and Railings in Revit Architecture 2008

Custom Stair Layout

Design Challenge:
A tight existing space where the
typical Revit method of laying out
stairs is not going to help.

Let’s think about how we would

do this in…Ok, I’ll say it…AutoCAD.

We would draft it right? In plan we would

Simply draw lines arcs and circles
to figure out our geometry. So, why does that have
to be different in Revit? We have drafting tools.
An entire tab on the design toolbar if
I’m not mistaken. Use it.
Custom Stair Creation
Design Challenge:
Most stairs aren’t grey. Most stairs have bull-nosing and overhang the stringers. Some don’t even HAVE
stringers. OK, you get the picture…
The first thing we need to think about is how a staircase is actually constructed. How would you actually
build a staircase out in the field? (Not in A field…THE field).
Piece by piece: Right? Well, Revit’s the same way. If we want a custom staircase, we need custom parts.
It would be nice if we could simply plug Revit into our brain and let it guess exactly how we want a set of
stairs to look, but that technology is at least 5 years out. Thank God.

Let’s start with a tread. We want a bull nose on the face of the tread with a cove below. This is a very
common profile. We need to make a family.

Go to File > New > Family…

Open Profile-Stair Nosing.rft

I like this template because it

tells you EXACTLY where to
draw the profile.

Delete all of the visible text

Draw the profile shown to the right.

Or your OWN profile…it’s up to


Save it to your companies library.

Load it into the project.

Go to the Stringers group.

Make the left and the right open.

Go to the Treads group.

Apply the settings illustrated below. The most important part is the profile we have loaded.
Design Challenge:
Any “custom” staircase needs a landing.
Not a bottom step with round ends, but a landing.
There is really nothing built into the Revit stair modeling
tool to address this. Therefore, a family needs to
be developed. Once it is developed you have full control over
its functionality independent of the actual stairs.

In Revit, go to File > New > Family.

Select Generic Model.rft

In the Ref. Level plan, select

Offset one above the center ref. plane 1’-0”

Offset one below the center ref. plane 6”

Dimension both of them independently.

What we need to do is this: We need to create a landing that
Will be flexible enough to accommodate any size tread depth
we need, as well as have enough bearing surface to work with.
Custom Handrails
Design Challenge: Non-traditional handrails.
What? The (4) canned default Revit handrails don’t cut it?
I have to actually make my own? Shame on you Revit!
Also, I should point out that most of the examples in this class
will be residential based. Commercial railings are going to
follow the same basic procedures, but are just to darn easy!

Go to File > New > Family…

Open the file: Profile-Rail.rft

Notice this type of family template makes it obvious

where to start adding our ref planes.

Click the Ref Plane button

Offset a reference plane down 3”

Offset two reference planes to the right and

left of the vertical plane.

Dimension the horizontal plane

Equally dimension the vertical planes

Add an overall vertical dimension.

Select the 2” dimension.

Add a parameter to it.

The parameters will all be type parameters and will all be grouped
under dimensions. See below.

Call it rail width.

Select the 3” dimension.

Add a parameter to it.

Call it height. (See directly below)

Start the Ref Plane command again.

Offset it down 1.5”

Add a parameter to it.

Call it radius point.

Group it under constraints.

Click the Family Types… button

Add a formula to “radius point”.

= width / 2
Draw an arc as shown below. Be SURE to snap it to the intersections of the ref planes. This arc is
controlled by these constraints. You do not need to lock anything if you JUST SNAP TO THE REF

Go to the Family Types dialog.

Change the width to 3”

Verify that the arc is positioned correctly.

Add 1” arcs to the sides.


Draw a line across the bottom.

Go to the Family Types dialog and flex the model.

Custom Spindles (Balusters)
Design Challenge: Non-traditional spindles. To be used in a stair family,
and as a stand alone family.
I have seen the default Revit spindles. I have never seen spindles
that look anything like that before in my life. We obviously need
some control over the creation of our own spindles. Again, I would like
you to keep in mind that I am using my own live example for this class
and it is residential based. Your situation may be entirely different, but the mindset
and procedures are the same.

In Revit, go to File > New > Family…

Open Baluster.rft

Notice that many of the tricky reference planes are already established. Feel lucky here, because we
will not be so fortunate when we try to add a post to the ends of the railings. There will be much sadness.

Go to the Ref. Level under Floor Plans.

Click on Ref. Plane

Add the ref planes as shown below and dimension them accordingly.
Note: Spindles are inherently much smaller in scale than we are used to in
Revit. I have changed my scale to 1:1.

Also, add a parameter called thickness to both of the overall dimensions.

Go back to the Left elevation.

Add additional ref planes above the top, and below the bottom.

Dimension them

Add a parameter called cut extension.

Group it under constraints.

Go to Solid Form > Solid Revolve

If it comes up, specify Center (Left/Right) for the Work


Draw a profile. Mine may be different from yours. Remember that the profile needs to form a closed
If you have multiple flutes and arcs, remember that it is a good idea to lock them to the ref planes.

Select the Axis button.

Pick the center ref plane.

Finish Sketch

Go to Family Types and flex the thickness.

Flex the height.

Go to the Ref. Level Floor Plan.

Select the Reference plane to the left of the spindle.

Click the Properties button.

Call it Left.

Go back to the Left elevation.

Void form > Void Extrusion

Select the Left Reference Plane.

Using the pick lines Outline the angle and the other reference planes.

Click on the Extrusion Properties button.

For the extrusion end, click on the small button at the right of the row.

Select thickness
Rail Panels
Design Challenge: If there is a need for panels.
No, not that glass panel that Revit gives us, but panels man!
Raised panels? Mission style panels? These are families.

Let’s start making some nutty families shall we?

We will create similar to what is shown here, but we

will make the rails slant.
I am so excited.

In Revit, go to File > New > Family…

Open: Baluster-Panel.rft

Go to the Ref. Level plan view.

Click Ref. Plane

Offset the center ref plane ¾” (19)

Dimension and constrain equally as shown below.

Select the 1-1/2” dimension and add a parameter.

Call it thickness. Make it a type parameter, and

Categorize it under dimensions.

Select the left ref plane.

Click the Element Properties

Give it a name of left.

Repeat the process for the right plane.

Go back to the left elevation

Offset each of the existing ref planes in 1-1/2” (38)

For the center ref plane, offset it ¾” (19)

EQ the dimensions

Add a 1-1/2” (38) dimension.

Select the 1-1/2” (38) dimensions.

Add a parameter called: stile-rail width

Start the Ref Plane command.

Offset the top angled ref plane down 1’-0” (305)

Dimension it

Add a parameter to it called second rail distance

Flex the model

Start the Ref Plane command.

Offset the second rail distance ref plane ¾” (19) to either side.

Dimension it

Equally constrain the dimensions.

Add the stile rail width parameter to the 1-1/2” (38) dimension.
Solid Form > Solid Extrusion

Pick Reference Plane: left as the work plane.

Using the pick option, pick the ref planes that comprise the outline of the mission style panel. Be sure
to have no gaps or overlapping lines. Revit will become angry. And we all know what happens when Revit
becomes angry!

Click Extrusion Properties

For the Extrusion end, select the little button to the right of the row.

Select thickness

The row will now be grayed out with a 1-1/2” increment

in there. This means that the thickness parameter will control the
extrusion depth.

On the materials and Finishes group, there is a Material row. You will notice the same little button to
the right of the dialog. Pick it.

We have not created a material parameter yet, so this next dialog will be empty. There is, however,

an Add Parameter… button which will allow us to create the parameter “on the fly”.

Call it material

Group the parameter under: Materials and Finishes

Custom Posts and drops
Design Challenge: Building a library of typical gooseneck, rise and drop
conditions. These families can be modified to accommodate each new project.

File > New > Family…

Baluster Post.rfa

Get some coffee or whatever drug you like…

this is going to be a doozie.

What we are going to do is this: We are going to

create a base, then a cap, then a gooseneck.
All in one big happy family.

Go to the Ref. Level Floor Plan.

Click on Ref Plane

Offset the center ref planes 1 ½” (38) creating a


Equally dimension them.

Add overall dimensions (see below).

Select the 3” (72) dimensions and add a parameter to them

Call it base size

Make it a type parameter

Group it under dimensions

Go to the Left elevation

Ref. Plane

Offset the ref level plane 12” (305)

Dimension it.

Add a parameter called base height. This is grouped under dimensions, and is a type parameter.
Dimension the top two ref planes.

Add a parameter called rail height.

Click Family Types…

Make the rail height 3” (72)

Time for a rant:
These reference planes need to be labeled.
It is a mindset…and should be standard
Procedure when you are modeling a family.
Get in the habit.

Label the newest ref plane top of base.

Dimension the ref plane

Add a parameter to it called base height.

Go to the Ref. Level floor plan.

Solid Form > Solid Extrusion.

Draw a rectangle based on the ref planes defining the base. If you wish, you can add radial

Click Extrusion Properties

The extrusion end needs to be set to the base height parameter.

Go to the Left elevation.

Solid Form > Solid Revolve

You can approach this in two different ways.
I have found that if I use multiple revolved solids,
I can then lock them to the next.
This helps to control the constraints when the height is flexed.
For this example I am going to create each revolved solid as its own entity.
It takes a little longer, but the results are going to be more predictable.

When prompted for a reference plane, this time you need to select the left / right plane.

Draw a “flute” as shown to the right.

Select the button.

Pick the center ref plane

Finish Sketch

Flex the model.

Draw another revolved solid.

This time, be sure to dimension and
lock the dimensions.

Flex the model.

Repeat the same thing at the top.

Flex the model

Add the connecting revolved solid to the shaft.

Once the lines are drawn in, dimension and lock them.

Flex the model

Open the railing family we did last week (or any railing that you want to use).

Select the left half of the lines and copy them to the clipboard.

Go back to the post family.

Past them at the top of the post.

Change the Rail Height parameter to be the same as the profile.

Add two new ref planes.

Equally dimension them.

Add an overall dimension.

Add a parameter to it called cap width

Trim and adjust the profile as shown to the right.

Solid Form > Solid Revolve.

Make sure the reference plane is correct.

Trace the pasted profile.

Finish Sketch

Go to the left elevation.

Start the Reference Plane command.

Offset from the center ref plane 6” (152).


Add a parameter to the dimension called gooseneck drop offset

Group the parameter under Construction

Make it an instance parameter.

Change the Baluster height to 3’-0” (914)

Ref Plane

Offset the ref level up 2’-0” (610)

Dimension it

Give it a parameter called stair rail height

This is also grouped under construction and is an instance parameter.

Ref Plane

Offset this reference plane 3” (76) from the gooseneck drop offset line.

Dimension it

Add an instance parameter called gooseneck extension into stair

Reference lines

Draw an angled reference line from the gooseneck extension into stair to gooseneck drop offset.

See the illustration which takes up the next page. I have check marked the new reference planes as
well. Be sure you have the same.

Align and lock the end points of the angled reference line.

Add an angular dimension to the reference line.

Add a parameter to it called stair angle

Go to Family Types…

Change the stair angle to 32 degrees.

Flex anything you can think of. At this point you really need to try to see if you can break this thing.

Reference Lines…

Draw reference lines tracing over the ref planes we have set up which define the gooseneck.

Related Interests