Tuesday, August 5, 2008

Level Claustrophobia

Have you ever woke up after a bad dream about your project being filled up with tons of levels and you couldn't make heads or tails as to why so many were created? Feel free to post comments of similar dreams :)

Anyway, in my case it wasn't a dream at all. Over the past few weeks I've been slowly coaching some new Reviteers as they work on a good sized project. For most of the team it's their first Revit job, with the exception of a few. They're doing a very nice job so far...modeled the site, walkways, linked two separate projects into a site project, etc. (stadium and arena renovation). But to my horror, there were close to 20 levels with most of them within a few inches of each other, with no logical naming convention. As you can imagine, that makes it really hard to navigate when you're trying to help on an unfamiliar project, and even the team couldn't figure out what each level was for or what was assigned to it.

Obviously this led to a team sit-around-the-PC session and we tried to clean up these levels in the site project first. Here's a list of why having too many levels is a bad thing:

  • Underlays don't work as one would expect. Since an underlay shows elements between the chosen level and the one right above it, with levels closely spaced, it becomes hard to get the desired results.
  • It is hard to visualize your project and it is next to impossible to correctly constrain geometry when you're constantly guessing which is the right level.
  • You'll soon become suicidal at the thought of having to manually hide all the junk levels in each view in your document set, especially when you're also having to adjust all the 2D extents.

Those three points alone should be plenty of good reasons. So now how do we handle the situation once claustrophobia sets in?

  1. We can create a new workset and uncheck the visible by default in all views option. Now place the junk levels on that workset and they won't show up on views unless you manually make the workset visible. This however does not solve the constraining issues.
  2. Bite the bullet and clean your project up.

So in this case we opted for 2. The earlier you can do this, the better. Which brings me to a newly formed wish: When I delete a level, I want Revit to ask me whether I want to delete all elements hosted on that level or whether I want to assign them to the nearest level with the appropriate offset so they stay in the same position. Since this is not currently possible (maybe through the API one could build an app. to do this...I'll ask Guy), the process is a little more painful, which is a huge reason to be very careful before going level-happy. Here's what we did:

  • In a 3Dview, we set all categories and subcats to be visible. Then we window-selected everything in the 3D view and the handy new filter tool told us how many objects we had in the selection set.
  • In a section/elevation view, we picked one level and deleted it. If we visually saw elements disappearing, then we undid immediately. If not, we reselected objects and checked how many elements were selected. Unfortunately, sometimes the Undo function quit working when elements were deleted so we had to start over and began saving after each successful deletion. This is a really annoying Revit trait. The Undo should never stop working!
  • This worked for levels that had nothing hosted on them, but how do we figure which elements pertain to a level? We had plenty of levels with around 10-20 hosted objects and wanted to clean them out. So instead we tried a different technique: we raised the level up by 300 feet at a time. This made it easy to see elements constrained to that level, such as walls. Elements that were completely hosted on the elevated level were then moved to another one. Once nothing was referencing the level, we deleted it.
  • If views associated with this level existed, Revit told us it was about to delete them, so we canceled and checked these views. We set the view parameter Display Model to NONE and checked if there were any view-specific elements. If there were, we copied them, deleted the view and recreated a new one associated to a different level. Then we pasted these elements in. Once all views were taken care of, the level could be deleted.
  • I took a sip of caffeine and moved on to the next...

I can sense that by now you're exhausted reading this. Imagine having to do this for several levels. I'm sure you'll think seriously next time before you copy a level or create a new one! Just keep in mind that levels are "vertical organizational devices". You could build a 100 story tower with one level at the base for example, and set offsets relative to it. Would it be wise to do so? Absolutely not. You want to use levels where it makes sense, such as where floor to floor heights might change. This will help you manage those changes easily later on by simply moving a level instead of having to deal with multiple object offsets.



Elisa said...

That was painful to read, a little scary too. I have a question, why create levels a few inches apart, what were they trying to accomplish? I can't think of a situation myself. Thanks.

Dave Baldacchino said...

Haha well, there was no real reason in fact. It was down to inexperience really, perhaps lack of thinking. I don't even know if one person did all that or if multiple were responsible. The important thing is that the team learned the lesson after seeing how painful it is to clean up after creating the mess.

coreed said...

i guess when it comes to making those type of changes, Revit no longer means Revise Instantly.

Anonymous said...

We have a large project, existing building with a new addition. All in all we have a total of 7 different levels. Problem is, rather than rename levels names that we didn't like, many people would just create a new level at the same level, then proceed to host objects. The problem became worse because both buildings were linked into a master file and we ultimately just unlinked everything for various reasons (Revit 2008 couldn't really handle what needed it to do). So once THAT happened, we wound up with between 14 and 20 levels, which doesn't even include T.o.Parapet Levels, or B.O. Ceilings, etc...
Levels in Revit really need more thought, and surely a tool as mentioned in this article would be extremely helpful. Really, the folks with Autodesk should introduce better level support, especially when you consider how important levels are. This was a great article.

Erik said...

Revit really makes you think. Not only do you have to think about building technology and construction methods, but to make full use of the "power of parameters" we have to think about how the application behaves. We've come a long way from lines on paper (or lines on a screen for that matter.)

Paolo Emilio Serra said...

This article is great! Thank you Dave...in my Revit learning I'm trying to collect Master's experience to find the better way to design within Revit.
I was used to separate finishing floors and structural floors also with dedicated levels, which have different tags, to make things "easier" :P
I generally use only plan views associated with finishing levels, and then duplicate using filters/discipline for the structural ones.
By the way, after I read this article I'm going to revise instantly my mindset to make it closer to the Revit one.
Thank you again Dave.

Dave Baldacchino said...

Thanks for your feedback everyone.

Salve Paolo! There's really nothing wrong with adding more levels as long as it's clear what the intent of that level is and what's hosted to it. In the case of finish floors though, there wouldn't really be a need for a level. After all, if the structural floor moves up or down, the finish will too ;) So in that case, an offset from the structural floor level should be enough.

We place levels within the structural projects on a dedicated workset (in-house staff). When we link to Architectural, we use the Specify Worksets option and we don't load that workset. This helps to instantly clean out sections and elevations in Architectural, as engineers like to add a lot of levels because of the analysis software needs.

Anonymous said...
This comment has been removed by a blog administrator.

Post a Comment