revit-ifc icon indicating copy to clipboard operation
revit-ifc copied to clipboard

Using Parts - correct properties in the IFC

Open Teun1 opened this issue 6 years ago • 9 comments

I did some testing on exporting Parts to IFC and had multiple problems with the properties.

A Part:

  • has a Common Property Value but it is not related to the Host
    • IsExternal
  • has Common Properties but no value - so also not related to the Host
    • Fire Rating
    • Load Bearing
  • doesn't have the following Properties but the Host has
    • Type Name
    • Uniformat Classification
    • Reference (original Family and Type in Revit)
    • Thickness (Revit knows if the geometry is changed)
  • has it's own Parameters based on beiing a Part (this makes sense)
    • Name
    • Type
  • has a different IFC entity from the host? > only mapping by Category?

There are real live occasions where you would like to export Parts to IFC. But at the moment it doesn't have the basic quality of the properties that is needed.

I would love to see these things fixed in future releases of the exporter. So users do not need to build their own buggy solutions.
(there is not always a direct link from a part to 1 original host)

Here are some simple test files. 190708_Parts_test_file.zip

Teun de Vries.

Teun1 avatar Jul 08 '19 10:07 Teun1

same here, I am also missing the Qto_BaseQuantities for Parts. But most importantly, properties like material thickness is not exported. classification is missing the assignment to classes is missing too -> IfcExportAs "IfcCovering:Cladding"

peter

epeter- avatar Jul 17 '19 14:07 epeter-

an update.

First on the Why: The Revit feature to use layers in system Families is nice. But it does not visually show up in IFC viewers. Because off that. We are not allowed to use this Revit Feature. But we wants to.. It is efficient consistent and fast. And you can say something similar for all kind of Sweeps in Revit.

Than on the How: Perhaps Parts can save a / the day. But because Parts don't have the minimum quality of information we need to do something more.

To stir up the discussion a little I added in the download my own buggy solution (for the moment). In short: I build a Dynamo Python script to get information from the original and write it back to the parts.

190731_Parts_buggy_solution.zip

  • 90731_Parts_to_IFC.rvt
  • Link.rvt
  • 190731_Parts_to_IFC.dyn < UPDATES on this script can be found here
  • 190731_Parts_2x3.ifc
  • 190731_Parts_4ref.ifc

I would love to get some feedback about the IfcName and IfcDescription

  • IfcName = Material name - Thickness : Layer Function ( in this way I still get my Thickness in the IFC )
  • IfcDescription = (Linked Part - ) (Changed Part - ) Original = original Type ( in this way I can trace some exceptions in Revit or IFC)

But perhaps there are also some improvements in the Python script. Or perhaps some thoughts on adding more information from the original to the Parts

I actually think that the IFC exporter should be capable of doing this. Or even better I do not want to make Parts in my Revit project. I simply want an option in the exporter to export the layers separately and with consistent information to IFC. Hopefully the future feature Walls: Layers will also help. But we still need to improve parts. And there are more layered system families than only Walls.

Teun1 avatar Jul 31 '19 15:07 Teun1

A new short update.

I did some test on the IFC_Material_Layer functionality in all the 8 different IFC viewers on my computer. (Solibri, Navisworks, BIM Collab Zoom, Tekla BIMsight, FZK viewer, BIM Vision, us BIMviewer+ and Areddo Not all were up to date...)

The IFC Material Layers were there in all 8 IFC viewers I tested. But it does not visually show up in 6 IFC viewers (including Solibri) Only Navisworks and Areddo (ever heard of it?) where capable of visually showing the Material Layers. Navisworks can even use these Layers in a timeline. The FZK viewer has an option 'Display Wall Structure' but it does not seem to work.

Not sure if these Material Layers have correct quantities in these viewers (in corner situations etc.). It seems a little hard to get the quantities of these nested Material Layers

An IFC Material does not seem to have a Thickness but an IfcWall has. When I am exporting Wall Parts as separate Walls to IFC, I would still expect them to have a Thickness. Beside the other basic IFC properties that I mentioned above in the first post and semi ‘fixed’ with a Dynamo Python script in my last post.

Still I would like some minimum and correct information in exported Parts related to the Host.

Teun1 avatar Aug 28 '19 14:08 Teun1

Did you use the revit ifc importer in Navisworks?

ArjanPeeters avatar Aug 28 '19 14:08 ArjanPeeters

@ArjanPeeters Sorry for the delay in the answer. It is indeed the Revit IFC importer in Navisworks. ( Options / File Readers / IFC / Revit IFC ) If you uncheck this option then you also cannot see the layers inside the Wall ...

Teun1 avatar Sep 09 '19 13:09 Teun1

Interesting discussion...

I'm not sure if something changed, but a normal multilayered wall (not parts) will have multiple materials with a thickness now: image

Parts are still useless: image

I'm looking for a way how to assign a predefined IfcType to a wall layer, guess it can't be done atm.

dr-snglr avatar Oct 07 '20 18:10 dr-snglr

It also depends on how you export things.

Is this IFC4 Referenceview? There have been some nice improvements there since July. Support IFC4 IfcMaterialConstituentSet for export. And IFC Material Layer properties. The problem with IFC4 is still that it does not work stable on a lot of platforms. e.g. I got a nice result in BIM Collab Zoom. But Solibri has no IfcWall at all.

In IFC2x3 things are more or less as described. I also started a discussion on LinkedIn to get some feedback about the use of layers. https://www.linkedin.com/pulse/spouwmuren-bim-teun-de-vries. It seems hard to say what users really need, but seeing layers as they are modeled is definitely a step in the right direction. Of course quantities is important. And some need multiple layers for planning purposes etc.

About the predefined Type. While testing with exporting Parts it seems that the IfcEntity has a top level Category Mapping or even hard coded. You can try an override parameter like IfcObjectType if that works for you.

Teun1 avatar Oct 13 '20 13:10 Teun1

We have any update about this ?

chuongmep avatar Feb 15 '22 03:02 chuongmep

This issue is also reported in Jira as "REVIT-243630" and is currently in the "Open" status.

ArtemHnatko avatar Oct 24 '25 13:10 ArtemHnatko