Monday, October 11, 2010

Simple parametric family in Revit

One of the coolest things about Autodesk Revit is the ability to make shapes that are governed by formulas. This is the essence of algorithmic design, and while several other tools on the market are more flexible and powerful than Revit in this regard, there are interesting things one can do in Revit's BIM environment.

There are several concepts that one must grasp. First, a new Revit family should be drawn using reference planes and references lines. It is easier to impose constraints on the reference planes than it is on the model lines and model geometry (model lines tend to lock to reference planes and points by default and it can be unpredictable or unwanted.) Use dimensions to establish the essential geoemtric relationships of your family, such as lengths and angles. Second, the Revit family must have named parameters. You associate these named parameters with the dimensions and angles in your geometry and model. Third, there must be an "index" value that triggers the formula. Typically you will type in the index value and then the formula will calculate the geometry parameter. Finally, you must enter a formula using the index (or indices) that will calculate a geometric relationship.

Once a family has been created in this way, you can insert multiple instances of it into your project and then set different values for the index. The geometry will alter for each instance based on the formula.

Below you will see the same project file after changing the formula in the beam family.

Here it is with the cosine determining the angle of the beam. (I am sure that I have not done this in the simplest way, but I added the extra calculated parameters just to convert the units of the parameters so that the formula would not complain about "inconsistent units". Apparently the cos function requires that the input value must be in degrees. Input value in integer or number does not work.)

1 comment:

  1. I am thankful to you because your article is very helpful for me to carry on with my research in same area. Your quoted examples are very much relevant to my research field. Acid Neutralizer Tabernacle NJ All Safewater is a private owned water treatment company serving Burlington County Our goal is to make sure your water is safe for you and your family to drink and bath in. We understand the crunch of rising costs and do our best to provide affordable systems while providing top quality.