GraphViz diagrams of IFC data
I had a need to visualise some IFC structure, so I created this not-very-sophisticated ifcdot tool.
It (currently, pull-requests welcome) only shows Object entities and connects them with a subset of Relationship connections that I was interested-in. This shows a single Wall. its Openings, Spaces (connected by Space Boundaries), and aggregates:
This diagram shows the same Wall, but includes objects with a second-degree of separation, the Openings have Windows, the Spaces are connected to lots of other Walls and Slabs, and also a Building Storey :
With three degrees of separation, the diagram expands to include everything directly contained within the Building Storey:
The tool can also show the entire IFC structure. Note that this project contains a single building and a structural model, but the two are not connected (at least they are not connected by any of the Relationships that ifcdot is following:
Comments
The 'dot' tool lets you cluster related things together in boxes, so this graph shows windows inside openings, inside walls, inside storeys, inside a building etc..

Here is the one degree of separation diagram above clustered:
..and the two degree of separation diagram:
@ktm to use this, place the
ifcdot.py
file in somewhere where blender can find it, then in the python console:Then you need the GraphViz command-line tools to process the
graph.dot
file. This will create an SVG image with the boxes:This will create an SVG image with the random layout: