C
by ChubbyQuark on 11 Mar 2021, edited 23 Nov 2022
#
Hello,
I'm looking for some information on scene organisation when using the BlenderBIM Add-on and the preferred method.
This would just be used for organising the scene to control visibility of objects, design options etc.
Two approaches would be: -
-
Using Blender standard collections within the .ifc hierarchy which are ignored when the .ifc is exported, not sure if this is even possible?
-
The organisation of the scene is implicit with a correctly structured .ifc project hierarchy? How would this be achieved so there is easy scene management within Blender that is also reflected in the exported .ifc?
J
by JanF on 11 Mar 2021
#
+1 votes
As far as I know there is no good system for this right now. I've been doing some research on how this could be done using a combination of the ifcsearch function and blender hide - my idea is that you save groups of filters for phases for example (ifcwalls on, load bearing stuff off) and have a button going ifcsearch filter 1 - hide, ifcsearch filter 2 - hide and so on. This should be fairly trivial to implement.
Do you think this would be enough?
C
by ChubbyQuark on 11 Mar 2021
#
Hi Jan,
Sounds like a good approach. Could the filters be used across different classes? I guess there are two things at play; ease of scene management within Blender and setting model view definitions. For scene management I think it only needs to be granular enough to display required phases and design options. Could these be one and the same thing ?
J
by JanF on 11 Mar 2021, edited 11 Mar 2021
#
What I am talking about is for Blender work only, do you mean Model View Definitions as defined by building smart? I think these are handled separately centrally by ifcopenshell and are only used for exchange, I don't know of any way to use them for work on a project.
But for stuff like renovations, phases, options and so on these "visibility filters" should be universal. Do you think it would be enough to just use ifc properties or would we also need some additional internal parameters which would be Blender only?
For
-
renovations the status property should basically be enough
-
design options I vaguely remember a discussion that there is no standard property, you'd have to create a custom one
-
project phases it would be a bit more complex, but mostly about annotations I think, zhis is mostly about graphics of things and that's a different topic
C
by ChubbyQuark on 11 Mar 2021, edited 11 Mar 2021
#
Initially I was just thinking scene organisation and management in Blender, but i find useful layer states (design options, floor finishes plan etc.,) often end up close to what MVD would be. For costing purposes would we not need a MVD for the various options so a QS could cost or a massing model for solar studies and energy analysis?
Perhaps it's more a question of how layer states/filtered options are transferred into the ifc schema for distribution?
T
by theoryshaw on 12 Mar 2021
#
Yes, I'm also curious about how best to organize a scene to accommodate visibility, phasing, design options, etc, and properly reflect it in the IFC structure.
Basically would be nice to import an IFC file, and be able to reconjure that structure in Blender.
T
by theoryshaw on 12 Mar 2021, edited 12 Mar 2021
#
+1 votes
I like the thought of potentially using IfcSpatialZone, too.
"A spatial zone is a non-hierarchical and potentially overlapping decomposition of the project under some functional consideration. "
J
by JanF on 12 Mar 2021
#
I was testing the ifcsearch possibility today. Took a 1Gb ifc model of one of our renovation projects and tried different search queries for ifcproperties on it. It took Blender about a minute each time to select the elements, so unless the search engine is massively optimised, using it as I suggested is impractical.
Also, I haven't figured out how to search multiple psets at once - if I want to select all LoadBearing elements, I have to go through pset_buildingelementcommon, pset_wallcommon, .. and so on and look for the property separately? (Regex works only on the searched term, but I guess just applying regex on the pset name would make the search time hit the roof anyway)
M
by Moult on 13 Mar 2021
#
@JanF can you add a bugreport to remind me to add support for searching on property name, not just pset name? I've run into this issue too.
There are no rules right now about scene organisation. You're free to do whatever you want. The import is simply a guideline. Over time, I believe some best practices will coalesce - but for now, I'm keeping options open.
C
by ChubbyQuark on 13 Mar 2021
#
Was this when testing the Pset fields? I couldn't get results using any of the Pset fields but was probably user error. Using a 250mb file and queries in IFC Class and GlobalId seemed to give results in a couple of seconds.
@Moult Are the Presentation Layers fully functioning? I see there are some visibility controls within this palette but they don't seem to be functioning.
J
by JanF on 13 Mar 2021, edited 13 Mar 2021
#
+2 votes
@Moult https://github.com/IfcOpenShell/IfcOpenShell/issues/1382
@ChubbyQuark you have to specify the full Property set name and the Property Name. The searched term can be specified using regex, if you enable it.
For example: Pset_WallCommon LoadBearing True
As of https://github.com/IfcOpenShell/IfcOpenShell/pull/1106 the support for representation layers seems to be a work in progress.
I tried it as well and I
C
by ChubbyQuark on 13 Mar 2021
#
Thanks for the link. Will do do some more testing when I get a mo.
M
by Moult on 13 Mar 2021
#
+1 votes
@ChubbyQuark the presentation layers isn't fully complete - I think I put the icons for visiblity and freezing, but forgot to program them :D
@JanF you should be able to add new layers. Just realised you can't do this to a project which didn't already have layers. Whoops! https://github.com/IfcOpenShell/IfcOpenShell/commit/4564ee3476f9f707d0a905069d1966bbe4306cb9
C
by ChubbyQuark on 14 Mar 2021
#
Did you get the spatial zone to import into an IFC viewer in the correct hierarchy? I imported your test .ifc into BIMVision and BIMcollab and couldn't see any reference to the zones?
T
by theoryshaw on 14 Mar 2021
#
Unfortunately IfcSpatialZone doesn't hold up on a roundtrip--at least the way I organized it, although I might be missing something.
https://gitlab.com/osarch/FreeMVD_WorkFlow/-/tree/53e1e8814d80e0feefda653dd412aef37807ee5c/Random%20Tests/IfcSpatialZone/from_Blender


T
by theoryshaw on 14 Mar 2021
#
No. I see it's in the exported IFC file, but there's no objects associated with it.
C
by ChubbyQuark on 14 Mar 2021
#
Just checked and spatial zones are non-hierarchical. I found a spatial zone will export and display, in some IFC viewers, if assigned geometry.
I had assumed a spatial zone could contain building elements and used as a 'filter' but I'm not sure that is correct.
Unfortunately that is where my knowledge ends without a lot more reading...
M
by Moult on 14 Mar 2021
#
@ChubbyQuark you are correct, spatial zones are non-hierarchical. In other words, @theoryshaw you cannot simply organise them as another branch in your spatial container tree (which is hierarchical). They are therefore more similar to IfcGroup. So far, no functionality is built in the BlenderBIM Add-on to manage or view spatial zones. If you assign geometry, yes, it will export and display I suspect.
If this is something you guys need relatively soon, please add it to the bugtracker so I can keep track :) So many things to do!
C
by ChubbyQuark on 15 Mar 2021
#
Would be a medium priority for me. We produce many feasibilty models with optioneering subsets, so was exploring how to best mass spaces, zones and areas, with a view for comparison (just areas and volumes initially). Thinking then being to automatically tag elements that are contained within a zone or space as the projects progress. Really useful for producing room data sheets for FM.
M
by Moult on 15 Mar 2021
#
@ChubbyQuark cheers, maybe file a bugreport and mention it is medium priority, just so that I can remember.
C
by ChubbyQuark on 15 Mar 2021
#
@JanF said:
What I am talking about is for Blender work only, do you mean Model View Definitions as defined by building smart? I think these are handled separately centrally by ifcopenshell and are only used for exchange, I don't know of any way to use them for work on a project.
But for stuff like renovations, phases, options and so on these "visibility filters" should be universal. Do you think it would be enough to just use ifc properties or would we also need some additional internal parameters which would be Blender only?
For
- renovations the status property should basically be enough
- design options I vaguely remember a discussion that there is no standard property, you'd have to create a custom one
- project phases it would be a bit more complex, but mostly about annotations I think, zhis is mostly about graphics of things and that's a different topic
Hi Jan,
I think combining the IFC search with Blenders layers is a flexible approach for setting up working views in Blender. I'm not sure if there would be performance hit using this method as you'd probably end up with many view layers.
Workflow could be: -
Use of IFC search and/or presentation layers to set required view --> Save new view layer in Blender (used as working view or basis of new drawing) --> Create drawing to store searches and view layers state. Issue is I don't think the view layer is, or can be, read by BlenderBIM?
Also not sure what would happen if an updated IFC file is imported as it would need to be filtered with the same settings so views/drawings would update. Your suggestion of saving filters based on search terms and presentation layers may be a more robust approach.
T
by theoryshaw on 20 May 2021
#
Is there a way, to recreate something like the following upon IFC import? If not, could there be? Just revisiting, ways to organize the scene, where it stands up to roundtripping.
You know peeps like their nested collections. :)

C
by ChubbyQuark on 21 May 2021
#
I've been out of the loop for a few weeks (day job took over). Not sure I grasp the question, as I understand it the structure is created when conforming. Ifc is imported, round tripping should be maintained as long as the .ifc is valid?
I need to download the latest addon and test any added functionality of presentation layers etc.