[BlenderBIM] Sharing IfcVoids with different elements

Hello, is it possible to share the same IfcVoid with different elements?
For example, in this situation

it would be helpful because the hole would be the same in the beam and in the plate and the hole would update with modifications.
I tried but when i assign the same IfcVoid element to the second element it disappear from the first element.
Thanks, Massimo

«1

Comments

  • Maybe aggregate the beam and plate, and assign the void to the IfcElementAssembly?

    theoryshawMassimo
  • @Coen wow it worked, thanks! :-)
    btw if you want to play i created a github repo https://github.com/maxfb87/ifc_steel_structure

    Coenbrunopostletheoryshaw
  • wow it worked, thanks! :-)

    It seems to be quite unpredictable/unstable with more complex shapes and more elements in the aggregate sometimes. I have a really hard time reproducing errors. Because sometimes it works flawless.

  • Sidenote:

    IfcGit works great too.

    brunopostletheoryshawMassimothunderbolt_132Ace
  • @Coen said:

    wow it worked, thanks! :-)

    It seems to be quite unpredictable/unstable with more complex shapes and more elements in the aggregate sometimes. I have a really hard time reproducing errors. Because sometimes it works flawless.

    Could you be more specific or could you make some examples? It would help to find and fix bugs...

    IfcGit works great too.

    Yeah it is awesome :-)

  • Related:

    See screenshot above, I have created a door and made an IfcWall assembly, the door cuts through the other wall just as I intended. However when I want to move the door, how would I update/regen all the wall geometries?

  • select both walls and press shift-g? Does that do it

    Coen
  • @Coen how did you assign the IfcDoor to the IfcAggregate? I didn't manage to do it... but i can assign an IfcOpening to the IfcAggregate and if i visualize the opening with alt+o i can modify and apply the new opening to the IfcAggregate just like it was an IfcWall...

  • @Massimo
    I made the aggregate an IfcWall (Don't know if this is necessary, haven't tested), selected the assembly , then selected a door from the menu and pressed Shift + O

  • edited July 2023

    @Coen said:
    @Massimo
    I made the aggregate an IfcWall (Don't know if this is necessary, haven't tested), selected the assembly , then selected a door from the menu and pressed Shift + A


    I don't know what I did, i can't reproduce it now... Maybe I did something different :/

    EDIT:

    I know what I did, I flipped the wall, instead of rotating it.

  • No succes so far trying to regen or pressing shift G when moving an IfcDoor

  • try selecting the door, and hit Shift+G.

  • @theoryshaw said:
    try selecting the door, and hit Shift+G.

    Thanks that worked, but now I can't reproduce the void through two walls...

    • normals are aligned
    • shift selected the assembly and pressed shift A to add the door

    What is the correct and precise order to create a void through an assembly/multiple elements? I am getting a bit lost now.

  • shift selected the assembly and pressed shift A to add the door

    I don't think this approaches works... would be consistent UI, if it did, however.

    I just add the door, then select the door and then the assembly empty.. then 'apply void'.

  • well, i think i got it, but indeed it wasn't simple.
    What worked for me is:

    • create the Assembly
    • create the door independent from the Assembly
    • select only the Assembly and the door and then click "Apply Void" (or shift+o)

    After that, i have the Assembly with the opening and the door assigned to it.
    To update the door position i did this:

    • select the door and move it where you want
    • with the door selected, click "Regen" (or shift+g) in order to update also the opening into the Assembly

    The problem now is that maybe the opening doesn't cut all the Assembly so you have to update the opening geometry.
    To do that you have to:

    • select the Assembly
    • click Void (or alt+o) in order to visualize the opening object
    • click on the opening object
    • modify the dimensions of it. For me it worked through the menu in npanel -> Item -> dimensions because Edit Profile (or shift+e) doesn't always works
    • select the Assembly and click Edit Openin (the check near "Add Void") and voila!
    CoenGorgious
  • what do you mean?.. seems simple to me. ;)

    Massimobruno_perdigaoCoenGorgious
  • @Massimo
    Thank you, this seem to be correct workflow. I also tested it with several openings.

  • I tried to do the exact same with a rotated wall, moved the 3D cursor. but this happened.

    When I wanted to rotate the door and show the void, press shift G, not much happens:

  • @Coen nice that we have figured out how to do it :-) ...but i was thinking that it's so much complex so it should be simplified in some way...
    Also, i'm also struggling about IfcVoids and if the same IfcVoid can be assigned to multiple elements...it seems that right now it's not possible but i was wondering if it is just a BBim limitation or it's not legal for ifc schema...

  • @Coen have you rotated the walls or the aggregate?

  • @Massimo

    I have rotated the walls.

  • This tool can help in these scenarios... basically selects everything in the aggregate..

  • @theoryshaw what does "Decomposition" do? I have never understood it...

  • @theoryshaw what does "Decomposition" do? I have never understood it...

    https://community.osarch.org/discussion/comment/8442/#Comment_8442

  • edited July 2023

    Also be aware when rotating the aggregate empty, about a center, that is different then the empty's origin, you'll get this behavior.

    If you want to rotate an object as expected, it appears you should either rotate with the empty as the center of rotation, or deselect the empty and then rotate.

    MassimoCoenRoel
  • If you know how to use this feature correctly, you can do amazing stuff.

    However, when I add a door from the "other" side of the wall assembly, it won't cut the void. Does anyone know why?

    paullee
  • However, when I add a door from the "other" side of the wall assembly, it won't cut the void. Does anyone know why?

    I guess it is because the opening doesn't intersect the walls. Have you tried to visualize the opening with alt+o?

  • @Massimo

    Thanks for the tip, but that didn't work. But I start to think the origin point should all start from the same relative "plane" for the voids in assemblies to work properly. See screenshots, when the origin points are not "aligned". the void wont wontk. I don't know the correct English terminology to describe what I mean.



  • @Coen I was able to reposition the void of a door by selecting the empty and switching on openings as @Massimo suggests. Does this not work for you?

    In my case, I found it a bit strange that the void from the parametric door didn't update when I changed the lining depth. and had to do the above to better position it.

  • @tim just to be sure, have you used the door/window from the demo library or have you used the parametric door/window generator? Because from the gif it seems that the door comes from the demo library...

Sign In or Register to comment.