I’ve been monitoring the discussions in the Industry Foundation Classes (IFC) group on LinkedIn for some time now and recently saw a post criticizing IFC export from Revit 2012. I saw a few discrepancies in the methods described in the blog post, so I decided to run through the same tests myself.
To ensure I had the same setup as the original post author, I created a new project in Revit Architecture 2012 using the default template. I created three phases: Past, Present, and Future. Three desks and three walls were modeled and I added a floor slab under each wall/desk just for context. The first (left) wall/desk/floor is assigned to the Past phase and the wall + desk were demolished in the Present phase. The middle wall/desk/floor are on the Present phase and the right wall/desk/floor are on the Future phase. In the image below, the Phase Filter is set to None to show all three sets of objects.
(Click on any of the images in this post to see the enlarged version)
I was using Tekla BIMSight version 1.5 for all IFC viewing; loading all IFC exports into one project and using the visibility setting for each model to display the results (shown highlighted in each image). For consistency, all IFC exports from Revit were set to IFC 2x3 and Current View Only:
One of the first things I noticed in the original blog post was that the author was utilizing Temporary Hide-Isolate to change the visibility of some elements. In training and use of Revit through the years, I’ve always understood that this tool only made temporary changes to visibility (thus the name); therefore, it should not affect printing or exporting. I proceeded to test this by hiding two of the desks in a view:
When you attempt to export with Temporary Hide-Isolate activated, you get this warning:
I chose to “Leave the Temporary Hide/Isolate mode on and export” and got the same result as the original blog author. Note the warning, “Affected elements may be exported with unexpected visual characteristics.” The desks that were temporarily hidden did not export. My suggestion for users…don’t attempt to use Temporary Hide/Isolate for exporting or printing.
The next test was to test the Phase Filters. I set a 3D view to Phase: Future and Phase Filter: Show New:
In the resulting IFC export, you can see that the phase filter is not recognized even though we are supposedly exporting “Current View Only.” As you can see in the image below, even though the phase filter of the view is being ignored, the desk and wall that were demolished are not shown:
The next test was to examine the effect of hiding a category of objects. In this test, I created a 3D view with the Phase Filter set to None and the Walls category was turned off in Visibility/Graphic Overrides for the view:
This process seemed to work, but it still ignored the Phase Filter of the view:
I attempted one more experiment using the Present phase. Revit should not export anything that is in a ‘future’ phase, so we shouldn’t have a problem here:
Unfortunately, you can see below that even though the Revit view displayed only the Present phase – ALL phases were exported to IFC – even the Future phase:
To summarize my testing of IFC export from Revit Architecture 2012, here are my findings:
- BAD: Don’t use Temporary Hide/Isolate to export or print
- BAD: IFC export ignores the Phase Filter parameter of a view
- GOOD/BAD: IFC honors the Phase Demolished parameter of model objects*
- Except the fact that if you’re exporting the Past phase, the demolished elements appear in the Revit view, but are still omitted from the IFC
- GOOD: IFC honors Visibility/Graphic Overrides of object categories
At HOK, we have experienced additional IFC export problems with curtain walls that have edited profiles and stacked walls. I’ll conduct some additional tests as well as conduct these same tests with Revit 2013 in a future post.
If you’d like to experiment with the files I used for this test, you can download them here.