Over the years of Autodesk® Revit® Implementation, one resounding theme I’ve heard is that “Revit simply can’t make drawings that pop, with aggressive lineweights.” To be sure—in Revit’s out-of-the-box configuration, the lineweights and drawing presentations can leave a little to be desired. Generally though, I follow this comment directly by getting to one of the roots of the problem. I ask the company or BIM manager where they acquire their content and how it is “assimilated” into their office library. I’m usually met with confusion, as lineweights and settings are stored in the template (something else I’m passionate about), but then I dive into how controlling a drawing’s ability to “pop” can sometimes mean a larger initiative at content organization. (This is what you’ll hear me refer to as “the unsexy” of Revit Implementation.)
Generally, we get content in one of three ways:
1. We make it
2. We download it
3. We buy it (or pay to have it made)
Decisions made about how to organize that content and return your investment in spades, in terms of presentation. Nesting and category selection for families is regarded as something for QTO and Visibility Control, but even with UN-shared nested families, proper category and sub-category selection can vastly affect drawing presentation.
What Does the Content Need to Say and Do?
For me, the decision about category, nesting, sharing goes something like this:
- What am I making? (Pick a category)
- Is it one object (skip to step 3), or multiple objects?
a. If multiple, do we want to count/schedule the sub-elements or control their definitions globally? (If so, set to Shared.)
i. If Shared, pick sub-objects category
b. If not shared, temporarily make sub-object the same category as the parent object.
c. Observe the rules for graphical behaviours of sub-objects, based on sharing/unsharing, category alignment, and different methods of graphical alterations. Nested components (shared or unshared) will respond differently to VG – Parent Category overrides, VG – Sub-category overrides, VG Filters (searching for sub-objects), and VG Filters (searching for parent objects). This may require you to rethink the category choices. (It’s often assumed that an unshared nested family inherits all things from the parent family, but once sub-categories come into play that’s no longer the case. Take a look at Figure 1.
d. Does the parent object also count as one of the “objects?”
i. Table with Nested Chairs—parent item is Table. It counts. Leave category as assigned in step 1.
3. Line-based parking spaces - Parent family doesn't count, nested "parking" familes are all we care about. Switch Parent Cut-ability and Depth Clipping.
a. As not all categories are “cuttable”, and not all categories respect depth clipping, evaluate if the categories you’ve chosen above are appropriate for the size and representation of the object
4. Once done, name families (and sub-families)
a. We use a system that increases specificity from left to right (including mention of sub-category), beginning with category abbreviation. This makes selecting specific portions of categories easier with filters. You can download a sample of this convention here: www.aaronmaller.com/BeckFiles/BeckGroupRevitNamingStrategy-Families.pdf
5. Begin modeling content. For us, 3D geometry is always preferable over symbolic representations. Even where linework is used (door swings), they are done as model lines on sub-categories instead of symbolic lines. This goes against the Autodesk model Family Style Guidelines (which is unfortunate if you’re trying to get ranked higher on Seek, but if you’re trying to make content that’s beneficial for real users, consider the following about model lines and geometry versus symbolic linework).
a. Shows up in non-orthogonal views
b. Shows up in 3D views (sub-category defeatable)
c. Are material and finish “taggable”?
d. Casts shadows in plans like real objects
e. Fewer items to constrain (just geom versus geom and symbology)
Managing the Content
So far we’ve talked about categories, nesting, sharing, and having to use generic models to handle cuttability of other categories. So how do we handle and manage all of this?
1. Sub-categories”—used in two ways.
a. For content with special lines or parts. Doors are an example. We want swings to be defeatable in some views. We have “Placement Lines” we only want to see in some views (Working). 3D Space Protection we only want to see in Export views (Navis) or in Coordination Views. These are sub-categories for parts of a family.
b. For all specialty equipment and generic model families and sub-categories for lineweight/linestyle graphical control. As SE and GM are the catch-all for all things not given a sacred category, we sub-cat and assign prioritized lineweights in object styles as well as line styles. We do this for all parts of the family. (All parts of a musical instrument are in the Musical sub-category.) We don’t break up families into tiny pieces like the manufacturers are told to do. It’s just senseless (sorry, guys).
c. Our loose rules for how to deal with content graphically:
i. Make a whole family “go away in a view”
1. Filter (by family name, usually, as it contains the “sub-cat” in the naming convention). We do NOT use real sub-cat as the family is then visible (selectable), but the geometry isn’t.
ii. Change lineweights/styles of “stuff”
1. VG:Cat/Sub-cat if “all of this stuff” such as furniture or musical Instruments
2. VG:Filter if specialty (such as owner provided)
iii. Show things differently in different views
1. Sub-cats and LOD (Egress SE families show only in Life Safety, Doors Placement Lines show only in Working (Sub-cat + View Templates)
iv. Transparency Changes must be family filter. We can’t make individual sub-cats transparent.
Earlier in the article, we mentioned that content comes from three sources: created, bought, and downloaded. So the above information is great if you build everything yourself, but what do you do if you buy content from a provider or (worse) download it from somewhere? Unfortunately, if sub-categories and nesting situations don’t all follow a standard, the graphical control of your projects goes to the wolves quickly.
Monitoring What’s in Use in a Project
Unfortunately, object styles is one of the dialogues in Revit you simply cannot export. It’s sometimes very handy to have them in Excel, as you can then sort the table by Linestyle, or Lineweight for quick QC review. While API developers may create an app that does this, I have a cheap way to do it, but it’s clunky. You can download the Excel Template you will need here: www.aaronmaller.com/BeckFiles/BeckObjectStyleTracker.xlsx
There is a YouTube video explaining how it works here: http://www.youtube.com/watch?v=NIzrwXKw048
- You must have Techsmith’s Snagit to make this hack work.
- If you have a sub-category named the exact same thing as a real Revit category, it will mess itself up.
- It’s a pain in the butt, but it’s handy.
Making Efficient Edits to Your Library
Unfortunately, all the above items will do is show you what’s wrong with your library. At the end of the day, you may have hundreds (or thousands) of families to open and edit manually. Similar to the spreadsheet for Object Styles, I have abused the (unsupported) functionality of Revit Journal files to make changes enmasse to office libraries. You can get the samples here: www.aaronmaller.com/BeckFiles/BeckFamilyBatchUtilities.zip
Again, not an elegant solution (like an API app), but, these items are free and save me hundreds of hours. Once I QC’d my office library, I then wanted to go through and open every single family in my library to make some edits. Here are some tips.
- In the Zip, you will find a file called Project1. You should replace this with a blank file, but one that has all the standards from your project template in it (use Transfer Project Standards.) Do not put it in the folder with the content you want to modify.
2. The .bat files that are included are the same ones that ship with Revit. (Well, the RFA one is. The RVT one is just modified to make the text file famlist, but out of RVT files instead of RFA files.)
3. Inside the file called Upgrade_3DContentStandards.txt you will find a section called “Put your Commands here.” These are commands literally cut and pasted out of a Revit Journal, performing the actions you want done in every family. The journal is set to:
a. Open Project 1
b. Open the first fam in the list
c. Perform whatever actions are in the section above
i. In my file, that means Transfer Project Standards >Project 1 > Select Object Styles, Lineweights, LineStyles, Line Patterns > Click Ok.
d. Save family
e. Close Family
f. Close Project 1. Keep the commands simple, since it will “choke” on any command that isn’t expected. Use keyboard shortcuts instead of mouse clicks, as clicking on screen can foul up a journal if a UI isn’t available in a different family.
4. The File called Upgrade_RFA-detail components.txt is currently set up to simply open VG and turn off the Annotation tab. Previously, I’ve used this to add office-specific object styles to the detail components as well.
5. Upgrade RVT is currently set as a standard Upgrade and Save file, but it is simply work to put the TPS commands into this journal and have it upgrade and edit your files to have new office standards on the fly.
6. Some enhancements I recommend making with these tools:
a. Family Units. I set all of my families and family templates to have units Suppress Zeros, use digit grouping, and suppress spaces. That stuff is annoying in the family editor!
b. Transfer Object Styles from a project into your families and family templates. Why? Even though “doors” only show the “doors” sub-categories, they are secretly holding all of the categories’ information in the background. So if someone swaps a door to specialty equipment and if you have done this, you will have all of your sub-cats from SE automatically in that family! It costs 40K in file size per family (varies, that’s with our subcategories). Totally worth it!
Well, I hope you’ve found a few tricks for family creation that you can implement and use in your office. Its something I take very personally at our office as content and the library is what the users have at their disposal when trying to put together better buildings!