26 October 2012

Managing Detail in Revit Families

In my previous post Too much Detail: why is my computer so slow? I explored the problems of over-modelling in Revit. In this post I describe an approach to creating Revit families that deals with this problem.

The original authors of Revit actually recognised the problem of over-modelling and provide a method to deal with it: Detail Level settings of Fine, Medium & Coarse. Yet these are rarely used to their full advantage. 


One way to conceptualize how to use Detail Levels is to think of models as possessing a representation based on their level of detail:

2S  - Symbolic or simplified 2D. Plan 2D representation only, using Symbolic lines
           and Masking regions. Only appears in plans.
2D  - Full 2D. Plan 2D representation only, using Models lines.
            Appears in plans and 3D views.
3S  - Simplified 3D. Block 3D model. Used in plans and elevations.

3D  - Full 3D. Realistically modelled. Used in 3D views only.

You model to one of those representation levels, and assign elements to the appropriate Detail Level  (Coarse, Medium or Fine) when making the families. Anyone can then control which one will be visible in a view within a project by selecting the appropriate Detail Level (refer red squares in image above).

To create this level of control select elements in the family file and change Family Element Visibility Settings.

How might you use this on a project?
By setting the Detail Level to Fine in a rendered 3D view you get it in glorious detail (as 3D rep), set to Medium in a room elevation and you see a simplified representation (as 3S rep), set to Course in an overall 3D view and the location of furniture is shown (as 2D rep) but doesn't clutter the architecture.


Now you could create different family files for each representation of the same object. But if more than one family for the same thing is used in a project you will start to get management complexity I'm sure you could do without. Someone needs to make sure all versions are captured in schedules. If it is required to change the object, either its appearance or scheduled parameters, someone has to ensure all versions get changed. Both in the project and within the family library.

But there is no reason why there can't be ALL representations in the same family file. If Detail Level settings are created correctly only one representation will be visible at a time once the family is in a project.
Although putting them all in one file can make creating families a little more complex, my view is every extra  minute spent on making a family better saves every person (and there may be many) who uses that family at least 5 minutes.
If this process is built into office practice it becomes less of a chore (as there is a clear process to follow), and leads to other benefits:
  • If it is mandated families are always initially modelled as 3S Rep the temptation by anyone to try and create a realistic representation is removed. It also drastically shortens the time to get a usable family.
  • Family templates can be created that have a parametric box already modelled, along with other parameters for scheduling. A new family can be instantly created by simply saving the template, unchanged, under a new name. It can then be placed in the project straight away, being visible both in drawings and schedules. When there is more time, or the office family maker gets to it, it can be updated with a more detailed family.
  • Poorly modelled manufacturers content can be used without all the editing usually required to make them useful. Open the manufacturers family, make sure everything is on a subcategory (i.e. not 'none'). Put all elements on to Fine Detail Level. Then copy and paste them into a family containing a 3S rep. Obviously this won't work for manufacturers families that are parametric, but most are not (one of the reasons they are poorly modelled). And generally for a 3D rep you want a realistic model, not necessarily an absolutely dimensionally correct model.


But how do you create two models in the same file?
Although you can set the Detail Level of views in the family editor, hidden elements are made half tone rather than invisible. A way around this is to use subcategories. These can be made invisible in family editor views.

Subcategories for representation levels:

2S  -  Plan Rep
2D  -  2D Rep
3S   -  3S Rep
3D  -  descriptor subcategory (e.g. Chairs).

All elements must be on a subcategory, never on None (which is same as Category). If you turn off a Category in a view Revit turns all subcategories off as well.
I use descriptor subcategories for 3D rep because I might want to assign materials via subcategories. 3S rep doesn't usually require a material as it is not used in coloured views, but in elevations & sections. However, you can still assign a material to the 3S rep elements by assigning its material to a material parameter.

You may come up with other subcategories. The point is every element needs to be on consistent  subcategories reflecting their representation level. 

To manage subcategory visibility create views in your family file for each representation level. I have done it to my family templates so they are always available when I make a new family.

There is further control via Family Element Visibility Settings. You can change which view type an element will be visible in. But only up to a point, everything but Symbolic lines and Masking regions are always visible in 3D views.
Note also that objects not exactly parallel to an elevation or section will display as if they are in a 3D view,  Left/Right and Front/Back settings are ignored.

Family Element Visibility Settings for 2S elements.
(note only Detail Levels are available for Symbolic lines and Masking regions)
In this example the chair doesn't appear at all in plan views set to Coarse Detail Level.

Family Element Visibility Settings for 2D elements.
In this example a 2D representation only appear in 3D views set to Coarse Detail Level.

Family Element Visibility Settings for 3S elements.
In this example 3S rep elements only appear in elevations, sections & 3D views set to Medium Detail Level. Symbolic Lines (2S rep) are used in plan views so you don't want 3D elements to be visible in plans.
Family Element Visibility Settings for 3D elements.
In this example 3D rep elements only appear in 3D views set to Fine Detail Level.
They don't appear at all in elevations or sections.

If the realistic view is simple, use the same elements for both 3S and 3D rep.
One element can appear as both 3S and 3D rep by ticking both Medium and Fine in its Family Element Visibility Settings, and making sure Front/Back and Left/Right are also ticked.

A word about nested families.
If you set any of the Family Element Visibility Settings to elements within the nested family those elements won't appear in your family views when you place the nested family. For example if an element in a nested family has display in Plan/RCP unticked, you won't be able to see it in any plan views, which can make it nearly impossible to place it. Also if any of the Coarse, Medium or Fine settings are unticked you won't be able to use the nested family for both 3S and 3D representations in your family.
Apply any Family Element Visibility Settings to the whole nested family after it has been placed.

So there you have it. It may appear a bit complicated at first, but once you get into the habit of making families this way it is pretty straight forward. Good family templates takes a lot of the work out of it.
And you end up with highly flexible families, so people can spend more time on the project and less time making families. Or as I think of it, more time to concentrate on the architecture (or engineering).

No comments:

Post a Comment