IFC upload results of different material definitions

,

Thank you for seeking help! Our friendly community is here to assist you. :folded_hands:

To assist you better, please consider providing:

  • Objective: Extract material information from IFC (no render information)
  • Issue: The ifc converter creates render materials. These names used to have the material of an element (IfcMaterial:Name). Recently this has changed to be a combination of the class of the rendering specifications IfcSurfaceRendering and a number. The number appears to not have a connection to the IFC Specs (at least we couldn’t identify any).

We are not sure when tis change occurred. The issue is that there seems no material information accessible anywhere anymore.

Hi Speckle team,

Any news on this?

Br
Martin

Please supply a sample file that replicates the issue.

Gen3Tests.ifc (3.8 MB)

Is that on an alternative server?

For reference the file you shared presents Materials in the renderMaterialProxies name field on app.speckle.systems

projects/8f9b7d436a/models/2dd2da42db@1f9436fa27

I invited you to our speckle project.

here you can se an old exmple

somehow the history got jumbled

If this is for a custom server please post the server version

Okay. Thank you for sharing this insight.

We use Version 2.31.2

Ok, I think I have a good grasp of the problem here.

The feature you’re suggesting as I understand it, is for render material names to match the human readable name, rather than being a combination of the style type + step element id.

This change was already implemented some time ago.

However, the version of the IFC Importer used in the public opensource server (i.e. server versions 2.x) lags behind what is on our official deployments. And thus does not have this change.

I don’t expect the open source server will be updated with this change any time soon.

Building fileimport-service from source may be an option, but the IFC importer logic has been moved from specklesystems/speckleifc to specklesystems/specklepy so it would also require code changes in python which unfortunately, I cannot give support with.~

EDIT: Let me double check this part is correct, and I’ll get back to you

Ok, I have some more information.
The speckle/speckle-fileimport-service is is missing the feature you’ve requested. This is the service that’s documented in all our self-hosting server guides. And I’m guessing is what you’re using.

The speckle/speckle-ifc-import-service is more up-to-date and contains the changes. However, we lack documentation for it.
It should be possible for you to update your deployment to use it instead:
see speckle-server/docker-compose-speckle.yml at 51d43b91c4681a75bff8b285da7f443a4599da67 · specklesystems/speckle-server · GitHub

You’ll need to tweak the image from speckle/ifc-import-service:local to the version to match your server e.g. speckle/ifc-import-service:2.31.14 and ensure you’ve added the FILEIMPORT_* and FF_NEXT_GEN_FILE_IMPORTER_ENABLED env vars to your sever, NUXT_PUBLIC_FF_NEXT_GEN_FILE_IMPORTER_ENABLED to your frontend

3 Likes