Thursday, October 8, 2020


 People are impressed by our model of the ceiling at St Anne’s Limehouse, but actually it’s a highly simplified abstraction of reality.  There is something about our system of perception that picks up simple cues and links them to memory traces, to “see” the complexity of life “in our mind’s eye”.

In many ways that is the true challenge of BIM. Come to think of it, that has been the challenge of drawing “for ever”.  What level of simplification is appropriate in the current situation?  The process we are following in our historical studies with BIM involves mapping out the building as quickly and simply as possible, then gradually adding layers of detail as we search to understand : what? why? how?

So this post is about the modillions (similar to Dentils, but scrolls rather than boxes)  Why are these “rows of teeth” so effective at articulating the junctions between horizontal and vertical surfaces? One answer is that they are memories of the rafter ends which remind us of the support system required to hold up any ceiling or roof. 

Let’s get down to the Revit stuff.  There is a family template called “line-based” which allows you to create arrays with two clicks.  Those two clicks define the ends of a line, and nested components can be arrayed along this line based on rules that you define.  In this case I decided to keep it very simple.  We have a nested element with a fixed size, and a parameter that sets the spacing, which I named “Module”.  (Model, Module, Modulus … isn’t language interesting)  There is a little equality trick here that I used to space the first element half a module away from the end point.  That sleight of hand means that “Length/Module” = “No of elements”.  Basically you divide the line into a number of spaces, and place an element at the centre of each space.

The trick involves defining a centre line between two parallel planes, then adding a third plane off to one side and “equalizing” that (so you end up with three halves!)  It’s something I discovered accidentally a while ago.

So it’s a very simple version of the line-based array, with just one variable called “Module”.  I made that a type parameter, you can name the types according to the different spacings.  With just two types, one 5% smaller than the other, I was able to fit the modillions to all the available lengths while equalizing the spaces at the corners (more or less)

This is called “balancing” in the trade: making small adjustments to the spacing so that the corners look “right”.

About 18 months ago (before Covid, and just before Notre Dame caught fire) I was exploring classical ornament (for the umpteenth time)  In this case I was focusing on using Revit’s simple approach to solid geometry to capture archetypal forms like “egg & dart”.  These are arrays, like the modillions, but there are no empty spaces. 

The amazing thing about systems like “classical ornament” or “the blues” is the infinite variety you can extract from what seems at first to be a very rigid set of rules.  There is something about these archetypal forms.  No matter how many times you “revisit” them, you can always find something new. 

So back in April 2019 I came up with three versions of “egg & dart”.  Then I went on to devise three variations on the “leave” theme.

As an aside, “leaf” “egg” “dart” … three elements to represent the vegetable & animal kingdoms, plus a man-made object.  Also that man-made tool is mineral based, and descended from the stone hand-axe that symbolizes our discovery of “technology”.

Going back another 4 years to some of my earliest attempts to create classical ornament, there was a set of insights that I called “row planting”.  As usual that is a play on words.  I had been interacting with other Revit bloggers, and between us we came up with various uses for “the planting hack”.  It’s a way of scaling up Revit geometry globally, something that is not available in other family categories. 

You put a “Planting” family inside a “Planting” family and the result will scale automatically based on the hardwired “Height” parameter.  I call it the “double nested” planting hack, because it relies in nesting Planting inside Planting.  In 2013 I applied this to various types of arrays: line-based families, railings and curtain walls.

That was a really fun period of experimentation.

For some reason, the acanthus leaf has become one of the most fertile sources of invention in classical architecture (and even in the Gothic, if you look carefully)  Revit geometry is far too simple to capture the 3 dimensional fluidity of this genre.  Or it would be, if not for the way our “mind’s eye” works. 

Picasso was very adept at distilling the essence of form.  He could capture a bull’s head or a female nude with half a dozen strokes of the paint brush in a matter of seconds.  There are some fascinating video clips of him painting on glass, filmed from the other side of the glass.

Maybe we can do something like this with the Revit solid geometry tools to capture the fluidity of acanthus.  I was inspired to have another go at this a couple of nights ago

There are three parallel sideways extrusions: solids.  Two of these are cut by void extrusions which run vertically.  Using the “Cut” and “Uncut” commands we can control which void cuts which solid.  Simple stuff, but remarkably effective.  Why? I guess it’s the “minds eye” metaphor getting busy again.

I went back to the 2013 work (which has evolved a bit in the intervening years) and double-nested this family into a line-based family. Because of the planting-hack scaling behaviour, you can create types based on the “module” parameter.  Now you have this amazing object which scales from a small carved detail on the edge of a wooden bookshelf, to a much bigger cast plaster enrichment, to an absolutely huge carved-stone external cornice.

The result of all this effort was an upgrade to work from different eras of my Revit blogging life, unified and standardised into 6 different versions of egg&dart plus 6 different versions of foliage/acanthus/leaf& dart.

This is now a system that can be expanded indefinitely with minimal effort.  You can take any Revit family (almost), change the category to “Planting”, rename it as “Inner” load it in at the bottom level of the nested stack.  Then you just have to adjust one scaling parameter “F” that compensates for the “Height to Width” proportions, so that the items in the array just touch each other (instead of overlapping or leaving gaps)

I did this 12 times in a couple of hours to create the library of classical enrichments shown below.

There is another little trick in there.  You can lock the “F” parameter buy typing a value into the formula field.  This will automatically control all the types, which is what you want.  I will also prevent people from messing with this parameter from within the project environment.  The only parameters you need to set in the project are “Module” and  “Stuff” (material).  You can use these to create as many types as you might need.

The other thing to mention is “standard naming conventions”.

At the bottom level, the planting family is always called “Inner”.  That way you can load a new family and it will automatically replace whatever was there before and maintain any linking (Material).  Next level up is always called “Module” (but you don’t really need to worry about this one.)

Material parameters are always called “Stuff”.  That’s just my own convention, based on choosing something simple and easy to remember.  These things are always made of a single material (I will cross the next bridge when I get to it)

The formula (H = Module*F) is used to control the hardwired “Height” parameter in the Module (by way of parameter linking) No need to mess with this.  It’s set up now and it works.  All you need to do is substitute a new family at the bottom level (Inner) and adjust F until the array works the way you want it to.

Download one sample family from here.  If you want more you can make your own


Contribute to our work here at “The Way We Build” exploring history with BIM.  We are great believers in sharing, but not so much in encouraging free riders 😊

No comments:

Post a Comment

I've been getting a lot of spam so had to tighten up comments permissions. Sorry for any inconvenience. I do like to hear from real people