Optimizing 3D visualisation in PowerBI

Hello everyone,
based on my conversation with @jonathon in the chatI have decided to post a thread about the limitations of visualizing a large 3D project in PowerBI.

Contexte: Using only IFC files of a large project in Navisworks, the connector takes a long time to send the model to the Speckle platform. Sometimes it crashes midway, requiring me to restart the data exchange. To minimize the data to be transferred, I started doing a 3D cut focusing only on the floor I am working on. This approach did reduce the time compared to sending the whole model, but it is still not very fast.

I was thinking that maybe it is possible to send only specific object properties. Instead of sending objects with all properties (quantities, Pset properties, etc.), we could focus on sending just the IFCGUID since it’s the only way to identify the objects. Is there a way to filter these properties to minimize the transfer time?

I have also tried the Blender connector for the IFC files. I uploaded them using the BlenderBIM add-on. The transfer is much faster, but we only get the geometry in Speckle, with no other properties except the Ifc-definition-ID, which is not what I am looking for.

based on speckle article about the blender connection :

" * Properties: Custom properties added within Blender are always added to a properties field on respective objects. For BlenderBIM objects, this includes the ifc_definition_id.

  • Additional IFC properties that aren’t stored in Blender are currently not extracted from the IFC and attached. This may be explored as an enhancement in the future."

Is their a way to store blenderbim properties in custom objects, in a way we can choose what properties to store and also finaly be able to transfer the model with some informations.

I hope my post was clear enough. If you have any questions or need more information, don’t hesitate to reply or send me a message.

1 Like

Addressing different parts of your questions

Please let us know when this happens so we can check the logs and determine the cause, whether a conversion failure or a server hiccup. By analysing this, we can improve things.

Specifically with Navisworks, the longest part of the conversion is the geometry extraction and translation; you’ll find that it is the same with almost all Navis exporters, even converting OBJ to disk where there are no properties. The extraction of properties is rapid.

Nevertheless, I am looking at migrating some of the conversion process to a different methodology.

I’m not a Blender expert, so perhaps @jedd could chime in here.

I appreciate the concerns you express, some of which we are actively working on and some we can investigate. When you asked about PowerBI, you correctly focused on what we publish to Speckle. At SpeckleCon23, we shared a methodology for reducing the data received by PowerBI using a more advanced query utilising the GraphQL API in PowerBI itself. It is not beginner-level stuff, but it could be of interest.

Thank you for your insightful contribution, @Hamza_Laalaoui. It is much appreciated.


For reducing data you can also use Grasshopper, see the video below.

Thank you soo much i will try my best to find a solution. Happy to be part of the speckle community

That looks great, i will definitely try it, hope it will work