Custom Slope and Elevation Grading Family

Typically, when grading a site, an engineer or landscape architect will specify new spot elevations based on desired slopes and existing spot elevations. Grading is mainly just drawing lines across various areas and interpolating spot elevations based on slopes.

While Revit’s current hardscape and Topography tools are not ideal for grading a landscape, it does have the capability to calculate slopes and spot elevations for you. All you need is a custom family with some parameters and formulas set up the right way.

This custom grading Family is a line-based Site Family. It is a model family, but it is created entirely from nested annotation families (so it only shows up in plan views). Depending on the input data, it has the ability to calculate the midpoint elevation, slope, and/or the endpoint elevation of the line. While it is a slightly powerful tool, it is also kind of just a big annotation (and does not interact with any model elements).

It has two types, Specify End Point and Specify Slope. It has 3 inputs as instance parameters: Slope, Elevation Start, and Elevation End.

instance parameters

As indicated by the types, only 2 input parameters are required, depending on the type. You can either enter a Slope and and the Elevation Start (for the Specify Slope type) or enter the Elevation Start and the Elevation End (for the Specify End Point type).

For each type, the input data is displayed in black and the output (or calculated values) are displayed in gray.

two types

The middle elevation can be moved to any point along the line, and the elevation will update automatically. Both the Slope and Mid Elevation text are instance parameters (and so can be turned on or off in any combination). By default, the Slope slopes down in the direction of the start arrow, but the Slope can also be negative (and slope up).

If you want to check it out, here is my Custom Slope and Elevation Grading Family.


I envision this family to be used more as a behind-the-scenes tool for laying out a grading plan. It would probably be better off on a separate Workset (so that it would not be visible in most views).

Ideally, this would be more than just an annotation and actually modified Topo or Floors. From what I understand this is doable with some work in the Revit API, but I haven’t quite gotten there yet.


5 thoughts on “Custom Slope and Elevation Grading Family

  1. You need to learn metric ;-)

    I thought this might be useful as a ramp gradient tag (in r2014 which doesn’t have one?) but I can’t get it to use 1:nn instead of % gradient.

    • Ha. I am starting to use metric! You should be able to use a spot slope on an actual Ramp, but it has to be moved from a Floor.

      I was a little lazy and made the Slope parameters as numbers and not slopes, so that’s probably causing some issues. Maybe I’ll fix it…

      • “You should be able to use a spot slope on an actual Ramp, but it has to be moved from a Floor”

        I knew you’d know the answer!

  2. Yeah, curves do not follow rules for slopes or spot elevations. I should look into that further. It seems like an issue that Autodesk should address.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s