Making Custom Patterns?

Here's another reader question, this one is concerned with making custom patterns in the Revit 2010 Curtain Panel by Pattern functionality. "Hexagons, squares and triangles are fine, but how about rolling my own patterns?"

As with all good questions, the answer is "ish". No, you cannot create your own patterning template upon which to hang your panel system, and this functionality is not available through the API either. And besides, times are tough, you should be so lucky to get a job shingling your father-in-law's shed. HOWEVER, most patterns are achievable with the given set of templates if you put some thought into it.

Basically, most architectural pattern can be decomposed into repeating elements that can be represented within the provided templates. Here are a couple examples of patterns that are not part of the hard wired set that can be created with a little analysis.

Before diving in, I recommend a particular setup for your workspace. Open a panel family, and load it into a divided surface in a mass family. Then tile your windows so that you have one view of the panel and one view of the panel instantiated in the surface. As you work on your panel keep reloading it into the mass family to see how it is patterning.

Real Equal Sided Hexagon:
One thing users have noticed is that the Hexagon pattern, while it does represent a six sided alternating pattern, CANNOT create equal sized edges. By cannot, I mean it is mathematically impossible with the given set of dots to connect and an evenly spaced underlying grid. BUT, you can create a repeating equal sided Hexagonal pattern by simply using the Rectangular Base. For those of you who have made tileable texture maps for rendering, the process will seem very familiar.
First, you must reduce your pattern, if possible, to it's basic repeating element, as composed in a rectangle. For the Hexagonal pattern, lets look at the basic unit from Nature©:

Reproduced in a rectangular pattern family takes a little High School geometry:
but then it looks like this:

and instantiated in a surface it looks like this:
Yee-haw, go build yourself a chicken coop! Download the Real Hex from here.

Keep in mind, this method will create great effects for mullions, but will get a little dicey for solid panels. I have a feeling you could really rock this pattern with a 1/2 Step Brick pattern, but I haven't figured this out yet.

Stacked Balls ala Selfridges in Birmingham
At first blush, this looks like a hexagonal pattern, but, as shown above, the pre-baked hexagon is not going to give you the nice even and alternating stacked distribution that this building exhibits. It can actually be decomposed into a brick pattern. The default behavior of the 1/2 step brick gives you a brick that is twice as long as it is tall. However, if you set the number of gridlines to be a U value of 2x' and V to be x', you get a square, alternating pattern.

The family I made has a hemisphere made in a generic model by face placed on the workplane of a 1/2 step brick. What's fun about this model is that if you mess with the spacing of the panel, you can get back to the more explicit hexagonal nature of the pattern.
Download the model from HERE

Cobble fan
This is where you have to get inventive and start looking at the available set of patterns and see where the desired geometry starts to have resonance with the more peculiar patterns that revit provides. I first tried this particular pattern with a hexagon, but found it a little gappy:

But a little trial and error with the Arrow pattern
Finding an arrangement like this:
Adding a little geometry gets this:

Download the CobbleFan File from here.

Please let me know if there are specific patterns that you want to try and make, let's see if it can be done.


  1. I am trying to create a equilateral hexagon space frame similar to the one in used as structure for the Eden Project. So I am going to start by using your Equal Sided Hexagon family but then I have to some how develop a 2nd level which I'm not too sure about

  2. Hello,
    I am trying to apply the RealHexagon to a dome but it still doesn't come out with the same dimensions.
    Any ideas on how can I solve it?

  3. Double curvature is going to result in variable sizes. This isn't a limitation of the software, just the way geometry goes together