[BlenderBIM]Writing a tutorial at EPFL. Stuck on IfcWindow and IfcOpeningElement
Hi, I'm Raphaël Vouilloz, architect working at CNPA, EPFL ; we discovered BlenderBIM thanks to Cyril. I'm writing a tutorial for modeling Le Corbusier's Villa Le Sextant, which the Lab has already done for Revit, Archicad and Rhino.
First, thanks for your work ; BlenderBIM is a really smart tool! I need help understanding how you make the openings work.
First with Linked Duplicate on IfcOpeningElements
I have the same non-rectangular IfcOpeningElements several times, so I need them to be Linked Duplicates, i.e. represented by an IfcMappedItem of a Tessellation (as it works when creating an IfcWindow with the BIM Tool from a mesh declared as IfcWindowType).
Is this possible? It would be great if an Alt+D in Blender could, for IFC, make the geometry representation of the duplicated IfcOpeningElement an IfcMappedItem of the source. Same for the BIM Tool from the second occurrence.
Then with Parenting IfcOpeningElements to IfcWindows
Could we make BlenderBIM parent on import? As it is done with the BIM Tool.
Also, is there a trick in Blender to pass a parent relationship when duplicating an IfcWindow and its IfcOpeningElement simultaneously? Because the basic behavior is to parent the copied child with the source object.
Thanks a lot
Comments
Welcome.
Something's in the air. :)
@RaphaëlVouilloz I think the answer is that there is no mechanism in IFC to attach an Opening definition to a Window Type, and there is no 'Opening Type'. So all Opening Elements are distinct Objects, unrelated to each other.
It would be nice for Opening Elements to share a Mapped Representation, but you can't currently create them like this in blenderbim. Mapped Items don't have names, so there is no obvious and simple way to track them in a Library or in blenderbim.
Thank you both, interesting! Great to know that this is an ongoing topic.
I understand there is no Opening Element Type. But is a Mapped Representation only possible from a Type object?
If I compare it to the way you set up the Windows, the lack of an Opening Element Type object is a problem in determining which of the geometries would be the mapping source of the others, right?
@RaphaëlVouilloz A Mapped Representation can exist in a model that has no Types. So, in principle, all your Openings can share the same mapped geometry, but at the moment blenderbim creates separate box-shaped geometry for all Openings.
Mapped Representations are 'anonymous', they don't have a name, so they are difficult to find unless they are attached to a Type (which does have a name).
Thank you, it is very clear.
And can't this problem be solved by the IfcRelFillsElement relationship? In the sense that each of these Openings will be related to their Windows, which have a Type.
Could this same relationship be used when importing an Ifc to parent the Openings to their Windows?
@RaphaëlVouilloz so to find an Opening geometry for an Window instance, the tool would need to look for other Windows of the same Type, then use the Rel Fills Element relationship to see if any of these Windows fills an Opening that has a mapped representation that can be reused for the new Opening ;)
@brunopostle yes thanks! such a process would be perfect in my case here.
And what is the "Copy Representation" feature mentioned on this link by Moult? I can't find it in the BlenderBIM settings, is it a Blender command?
Edit : Found it under Object Data Properties > IFC Representation
Is it possible to store the Alt+D functionality of Blender in an IFC file?
related:
https://community.osarch.org/discussion/992/blenderbim-ifcopeningelement#latest
https://blender.stackexchange.com/questions/264629/resize-edit-multiple-meshes-relative-to-their-orientation-position-blender
Copy representation....
@RaphaëlVouilloz what language will your guide be? It would be great if we could host it here or in the new BlenderBIM documentation site - that way it can more easily be maintained and used by many. We really need tutorials like what you're doing.
Hi Duncan, definitely, it would be a great way to enhance it. I need to check with the lab/school.
For now, the screenshots are in English but my texts in French.
I hope to have finished it by the beginning of September.
@RaphaëlVouilloz
How's the tutorial coming along? :-)
This is interesting...
https://github.com/IfcOpenShell/IfcOpenShell/issues/2474
Thanks for the link, indeed it would solve my case here.
Well, thanks. I'm writing it as a website using IFC.js, hosted on our github: https://enac-cnpa.github.io/BlenderBIM-Tutoriel-Villa-Le-Sextant/2_modelisation-blender.html
So far I've just published an introduction to Blender, I hope to come soon with the first pages on BlenderBIM.
BTW soon there will be a parametric window generator based on the IFC definition of a window :) That'll make basic modeling of these things much easier!
Indeed that will be great!
BTW I can't repeat the trick you showed me for the IfcWall cut by the roof. When I add a Void with Shift O in the BIM Tool (with IfcWall selected) the opening is not created as an IFC element:
you have to apply the void... https://www.dropbox.com/s/ecw8q4vwdrsy173/2022-10-17_10-17-19_Blender_[DDropboxGitLabFreeMVD_WorkFlowRandom_Test_blender.mp4?dl=0
I don't think the ifcopeningelements are available anymore, in the outliner, w/ the new opening system.
Wow, so that's how you make a void !
I have to say this workflow did not click with me. I think there should be a tooltip or something to hint to the user to deselect everything, then select the blue box, and then the wall, and then click on the button which name has changed from "Add Void" to "Apply Void".
I also think "Add Void" should be greyed out when an opening element is selected to reduce confusion. Also, voiding an opening with another opening shouldn't be available. :)
I do like the green and blue overlay which makes the openings stand out.
Is it possible to void a wall with a non box-like object ? Can I imprint a suzanne face out of a wall with a void ?
Thank you! I didn't get it because with an IfcWindow it automatically creates an IfcOpeningElement and also automatically applies the difference to the wall.
To understand, is this Void an IfcOpeningElement or something else? Because it does not become part of the IfcOpeningElements collection.
Also voids don't undo on Ctrl+Z, it reappears when a new one is applied :

Thanks for this Theoryshaw! I was racking my brain, it was simpler before, but the new openings are so much cleaner
@theoryshaw
How did you manage to get the buttons so organized? with me they fall off the screen:
click on the 'tool' tab, for alternate UI:

I vote for losing the horizontal bar as I can only see half of it on my screen.
For what it's worth you can also access the tools inside the properties editor.
That's my favourite preferencenow after your tip because it does not take up space from the 3D view and the other buttons are also nearby.
Yep it's both great and a little bit unwieldy how so many properties can be found in many places in the Blender interface... Weirdly you can't add new types or access the type manager from there, though...
I apologise I haven't been able to keep track of all these posts on the forum, I really hope someone can help make notes of any suggestions like @Gorgious 's above and file them as a bug (maybe just keep one "suggestions" bug to keep things light).