BlenderBIM doesn't display geometry

TL;DR:

Why isn't the attached IFC file properly displayed in BlenderBIM compared to BIM-Collab?
Blender
BIM-Collab

Background:

I'm trying to familiarize myself with IfcOpenShell and BlenderBIM. Since I work on infrastructure projects, my research involves converting a German, XML-based exchange format for sewers into an IFC file.
You can find the source code on GitHub.
After installing the Python dependencies, you can run the command to produce the attached file:
python .\main.py .\examples\ISYBAU_XML-2017-Stammdaten.xlsx
The majority of geometry creation occurs in this file.

What am I missing? I'm relatively new to Python and IFC, so it's possible that I'm misunderstanding something basic.

Comments

  • Your file is invalid, as the extrusions have negative depths. The schema requires positive length measures for extrusion depths. Behaviour for invalid data is undefined, I guess BIMCollab is either using an absolute number in their code, or flipping the extrusion direction.

    hannesw
  • It would be nice if there could be some sort of error message, or an error log message in the console window, when something is invalid while loading an ifc-file.

  • Unfortunately I think right now it's not practical to do this, because:

    1. A lot of files have invalid data.
    2. Checking validity takes time. An extensive check takes a lot of time. There are different types of invalidity, at the step syntax level, schema level, header level, where rule level...

    You can validate your model by running the validate tools in the BlenderBIM Add-on, or using https://validate.buildingsmart.org/ or by using Python in IfcOpenShell.

    John
  • Thank you so much! Now it works.
    Screenshot BlenderBIm

    I'm curious. What's your process for debugging such a scenario?

  • In this case, I load it into Blender, then I 1. see there is no crash, so it's a non-fatal error 2. I see empties, which suggest that the products are loaded and the placements are correct and 3. I go into the debug panel, select an empty and inspect from active object, and I start by running the create shape from step ID command, and when it fails, I 4. start to step through the shape representation and use the create shape at each representation item. And where it fails, I check in detail each attribute makes sense (e.g. no nonsensical attributes, self intersecting polygons, etc).

    MassimotheoryshawhanneswGorgiouswmiemiliotasso
  • Thank you so much for sharing!

  • It's also good idea to run validation on IFC file after exporting it from somewhere (also available in Debug section) as some errors might not occur right away and validation can help identifying them.

  • Thanks for the suggestion. After i prevented the negative extrusions there doesn't seem to be any validation errors.
    I had some problems with finding the button for validating the ifc file. Finally if found, so I attached a screenshot if someone is looking for this.

    theoryshawVDobranov
Sign In or Register to comment.