Function Matters for Shading


Now, I’ve been using Revit for a long time.  And just when I think I know a thing or two about it, I get slapped in the face with something new.  Maybe this has been around for a while, I don’t know.  But recently, I have been digging deeper into gbXML exporting and workflows between Revit and energy analysis tools, and today I discovered a tasty little tidbit that was most interesting, if not a little confusing.  So for your reading pleasure, I offer you the following.


There are a number of system families in Revit that have a Type Parameter called “Function.”  For years, I ignored this little setting.  Superstitiously, I would modify it when I made new wall types, but I didn’t really know what would happen if I didn’t.  Well now I do…at least a little.

I was digging deeper into the meaning of Sliver Tolerance and it’s affect on the gbXML file and subsequent Ecotect model.  I had made an interior shaft and was studying it. (I know what you’re thinking, “Wow, I wish I had his life. It’s so exciting!!).


When I looked at the analytical surfaces, I saw what I expected to see.


Then, I haphazardly swapped out a standard interior partition for an exterior brick wall.  I expected to see the same image again.  Well, wouldn’t ya know, the next time I looked at the analytical surfaces in my gbXML preview window, I saw a little piece of something poking up.


I completed the export process and dropped the gbXML file into Ecotect.  Sure enough, that little surface, even though it is under the roof, was assigned to the External Shading zone.


So now I start down the rabbit hole. 

First, I put a room in the attic space.  As soon as a room object was touching the wall, it turned into an Exterior Wall surface.  In addition, all of the interior partitions stopped being ignored.  They showed up as  Interior Wall surfaces, now that a room was touching them.  (I should note at this point that all walls in this little building extend up and are attached to the roof).  This was the behavior I expected, so before continuing on, I deleted the room.

Next, I started changing the Function parameter to the various options and viewing the results in the Export gbXML dialog.  The values of Exterior, Foundation, Retaining Wall and Soffit, all acted the same.  Interior and Core-Shaft did not, they were ignored.

I was half way down the rabbit hole at this point, so I decided to continue to see what I could find.

Shading Surfaces

I know now that walls, whose Function is set to Exterior, Foundation, Retaining and Soffit, all produce Shading Surfaces when they are set as Room Bounding and not adjacent to any rooms. 

In addition to walls, floors also have the Function parameter.  The values are limited to just Interior or Exterior.  If a floor’s Function is set to Exterior, if it is room bounding, and if it is not adjacent to any rooms then it will be exported as a shading surface.


Note that you must have your Export Complexity set in the Export gbXML dialog to “Complex with Mullions and Shading Surfaces” to get all of these to show up.  Depending on the size of your model, this may result in a slow export.


No Function

There are some other objects that do not have the Function parameter but still create shading surfaces in the gbXML.  These are Roofs and Curtain Wall Mullions. Roofs make sense.  Curtain Wall Mullions make sense.  But what about mullions in regular window families?

I tried to add an object in a window family to act as a light shelf spanning from interior to exterior.  I set the subcategory to Frame/Mullion.  Sadly, I discovered that gbXML does not recognize that subcategory as a shading surface like it does the curtain wall mullions.

So apparently, you must create your light shelves in Revit out of floors or roofs (or ceilings on the inside).  However, beware that as soon as you project a room bounding object into a space, you get all sorts of craziness…


like voids and exterior walls disappearing.  Notice that there is no Exterior Wall surface above where the roof cuts into the inside of the building.


At this point, I don’t have any good suggestions on how to do light shelves.  If someone out there does, please comment below.

In Conclusion

I found the bottom of the rabbit hole!  I can’t go any further right now.  However, along the way, I figured out some cool new stuff that can improve the quality of my gbXML exports.  It was good exercise crawling down that rabbit hole.  Sadly, I didn’t see any cute fuzzy bunnies or that waskely wabbit. (Elmer Fudd)

Ironically, when I bottomed out, I started looking in the help menu and found this on the new WikiHelp that Autodesk is doing now for 2012 products.  I also found this helpful, although I don’t think it is quite accurate.  In any case, I hope this has been useful.  Stay tuned for more coming soon.

1 comment:

  1. Hi Darren,
    Did you try this with the conceptual energy analysis tools at all? You could make a light shelf with a mass that has no mass floors - it will just act as a shading device.
    Lilli Smith