Revit Curtain Wall System IFC Export and Levels

We have built a Curtain Wall System which is referenced/embedded in a Mass, and now we are exporting it to our consultant in the resquested IFC file format. Here is where the problem ensues. We need the Curtain Wall to export referenced to each by Level (and therefore we built seperate Massings per Level). The Curtain Wall System and it’s Curtain Panels and Windows are not exporting to it’s Associated Level, likely because the original Massings were copied, and some are even groups (identical floors).

According to Autodesk, Mass Instance Properties do not have a referenced Level, and Mass Floors (which we did not use) have floor Levels that are read only.

I tried using Dynamo to report the Levels of the Massings, but they report a null value. Does anyone have an idea how to report the referenced Level of a Mass, and then change it with either a script or Dynamo. Otherwise we will have to rebuild each floor’s Mass and its respective Curtain Wall System.

thanks a lot Dynamo community!

Hi @kenwoodsign

Here is how you create mass floors in Dynamo:

Dear Kulkul

Thank you for the reply. We do not need Mass Floors, as you cannot apply a Curtain Wall System to each subdivided surface independantly.

We need a Mass with referenced Levels…

Ken Woods

@kenwoodsign Are you trying to move your mass floors?


Not a Mass that is subdivided with Mass Levels, but rather that has a Mass that has a referenced Level/Floor (Bottom and Top), similar to a Wall having a Base and Top Constraint. This is what determines which Level it will export to in IFC…

@kenwoodsign Could you show us screenshot of the parameter your trying to access?

Sorry I was away from my work computer. Please see attatched screenshots.

Mass with no abilty to set Base Constraint…

Try with Host. Set to Level 107

Exported Curtain Wall IFC open in Solibri. Curtain Wall at Level 106…

@kenwoodsign - I’ve had this problem with CWs in the past as well. It’s a weird behaviour and I’ve never been able to reproduce it personally. I’ve always wondered how our modellers managed to pull that off. :wink:
Anyway, regarding your question: I’ve had limited success with two nodes I made for the Clockwork package (Element.CopyToLevel and Element.CopyByVector, the latter with the rehostToClosestLevel option set to True) and subsequently deleting the original CW. (I say limited because in some cases it didn’t seem to work.)

I suspect it has something to do with the Mass being created at a Level with a Read-Only proeprty, and then copying it in elevation to a higher/lower level…

I will try your rehostToClosestLevel option. thanks for the input


Probably, but I’ve also seen this in projects that were using CWs not hosted on masses. It’s one of those quirky idiosyncracies of Revit.

1 Like