Creating a Parametric Step Ladder Family

Have you ever needed a step ladder that is designed to conform to AS1657?  Well look no further.  I required one, and figured if I was going to make one, I’d make it unbreakable and make it impossible for the user to set values that don’t meet Australian Standards.

AS1657-1992 Step Ladder

So how did I go about creating this?  As usual I needed to work out exactly what I wanted the family to be able to do.

  1. Make the family easy to place, ie: Level to Level, origin to be the top of ladder so you can place near the wall and when you adjust the values it stays there.
  2. Ensure all the AS1657 minimum and maximum values are adhered to.  That is:
    1. Clear Width between stiles (not less than 450)
    2. Min. & Max. Riser Height (200-250)
    3. Incline Angle (60-70 degrees)
    4. Handrail Clear Width (550-750)
  3. Allow the user to control materials
  4. Allow the user to control Width, Number of Risers, Incline Angle, Tread Thickness, Tread Depth, Offset to wall, Stile Size, Handrail Diameter and Handrail Clear Width
  5. Allow the handrails to extend to guardrails applied at the top level
  6. Show Headroom clearance lines in elevation
  7. Complete Assembly Code & Omniclass values & any other relevant meta-data

To make a level to level based family you need to begin with a template that has two levels in it.  Easy!  Just use the Column or Structural Column template, go to family category & parameters dialog and select the new family category to use.  In my case Specialty Equipment.  I then had to place a reporting parameter between the levels so I can use it in the formulas.

Ensuring values fall within a given range but still allowing the user to specify the values can be tricky in Revit.  We require 2 sets of parameters.  The “desired” values entered by the user, and then the “validated” versions which ensure the desired values fall within the given range.  Its this validated version that is used to drive the actual geometry.

Xrev-Step Ladder Formulas

As you can see there are a series of conditional statements.  That basically say if the value is within this range, then use the desired value, otherwise use the minimum or maximum (depending on what side they on).

The treads are a simple array of a nested family using the array to last option and constraining the first and last element.  The tricky part was the handrails and having them connect to the stiles when the relationship changes.

Anyway I’m feeling extremely generous.  Download the family here.

Leave your comments and hopefully you try out our software as well!

This entry was posted in Services and tagged , , , . Bookmark the permalink.

Comments are closed.