Autodesk / revit-ifc

IFC for Revit and Navisworks (2019+)
469 stars 194 forks source link

Using Parts - correct properties in the IFC #120

Open Teun1 opened 5 years ago

Teun1 commented 5 years ago

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

A Part:

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.

epeter- commented 5 years ago

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

Teun1 commented 5 years ago

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

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

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 commented 5 years ago

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.

ArjanPeeters commented 5 years ago

Did you use the revit ifc importer in Navisworks?

Teun1 commented 4 years ago

@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 ...

dr-snglr commented 3 years ago

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.

Teun1 commented 3 years ago

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.

chuongmep commented 2 years ago

We have any update about this ?