IfcSpace and BlenderBim

2»

Comments

  • @steverugi i guess that IfcVirtualElement is what you are searching for (https://standards.buildingsmart.org/IFC/DEV/IFC4_2/FINAL/HTML/schema/ifcproductextension/lexical/ifcvirtualelement.htm).
    Btw i think you have to model it manually because i think there is no UI for that but i can be wrong

    steverugi
  • @Massimo said:
    @steverugi i guess that IfcVirtualElement is what you are searching for (https://standards.buildingsmart.org/IFC/DEV/IFC4_2/FINAL/HTML/schema/ifcproductextension/lexical/ifcvirtualelement.htm).
    Btw i think you have to model it manually because i think there is no UI for that but i can be wrong

    thanks for the quick reply, I thought as much but I'd like to know how to do it in BBIM's UI
    I assume an entity Plane needs to be created and assigned IfcRelSpaceBoundary

    how to continue to get two separate spaces ? selecting walls only generate a single big space

    Geometric Relationships > Space Boundary seems the way to go but I can't figure out how (looks like I need to select 1 space, which I am trying to create, and 1 element?)

    I think my issue is very common when modeling an apartment and could be useful to others here, thanks again for your help

    Owura_qu
  • @steverugi well, you can use the "generate space" function instead of "generate space from walls" function.
    When you select a building storey collection in the outliner, a button called "generate space" will appear under the tool panel when space tool available ...
    So, you have to assign the IfcVirtualElement class to the plane that you want to be the virtual separator, place the cursor into the space you want to create, select the building storey collection you want and click on "generate space".
    In this way, it should consider also the IfcVirtualElement in the counting (not only the walls)

  • @Massimo said:
    @steverugi well, you can use the "generate space" function instead of "generate space from walls" function.
    When you select a building storey collection in the outliner, a button called "generate space" will appear under the tool panel when space tool available ...
    So, you have to assign the IfcVirtualElement class to the plane that you want to be the virtual separator, place the cursor into the space you want to create, select the building storey collection you want and click on "generate space".

    I am not sure what you mean by this

    In this way, it should consider also the IfcVirtualElement in the counting (not only the walls)

    thanks again for your patience but following your steps it still creates a big space, ignoring the boundary plane

    btw if I undo the process (ctrl+z) it crashed Blender, every time. I also noticed that the boundary is not saved in the .Ifc file when I load it back

    will figure it out some other time, enjoy your Sunday thanks!

  • @steverugi in your image, it seems that the plane is not an IfcVirtualElement but an IfcRelSpaceBoundary.
    In this usecase, we don't need to define IfcRelSpaceBoundary

  • edited February 4

    OK thanks !
    now it works, so much appreciated

    Massimo
  • hi @Massimo

    FinishFloorHeight, however, can be calculated automatically, but you have to define an IfcCovering entity with predefined type Flooring contained in the space in order to obtain that ...

    if I run Calculate All Quantities of an IfcSpace it does not consider the ceiling, only the FinishFloorHeight, Net and GrossCeilingArea are set to 0 if I include an IfcCovering[CEILING] inside, please advise, thanks
    (.ifc sample attached)

    both ceiling and floor are inside the IfcSpace before pressing Calculate All Quantities

  • hi @steverugi
    Well, i found some strange things in the file:
    1 - the ceiling object has to have the height of all the the ceiling space...look at this picture

    In this way, the quantities are calculated correctly

    2 - the ceiling predefined class is not assigned correctly to the ceiling object

    If you look at the picture, there is no predefined type and it should be "CEILING"
    Just click on edit, reassign the predefined type and save attributes, it should work.

    This is happened already before, but i don't know how this can happen.
    3 - if you look at the outliner, there are some objects that aren't in the IFC project

    I think they should be deleted, and i maybe the n.2 problem is related to these...

    Speaking about the ceilings (n.1), i don't know if the object has to be height only for the ceiling depth or has to be height all the ceiling space (like if it was a space)... i looked at this picture when i wrote the function
    https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/lexical/IfcSpace.htm
    but i don't know if i understand it correctly ....
    I attached also the cleaned file

    steverugiArv
  • edited March 10

    Hi @Massimo many thanks for your speedy reply, much appreciated

    hi @steverugi
    Well, i found some strange things in the file:
    1 - the ceiling object has to have the height of all the the ceiling space...look at this picture

    something completely new to me: the IfcCovering must have its thickness equal to the distance between its soffit and the above slab's, well noticed (lesson 1 today)

    In this way, the quantities are calculated correctly

    Yes, now it works

    2 - the ceiling predefined class is not assigned correctly to the ceiling object

    If you look at the picture, there is no predefined type and it should be "CEILING"
    Just click on edit, reassign the predefined type and save attributes, it should work.

    My bad: I relied on the default value shown in the panel but I understand I have to actively select it to make it appear like in your image, got it (lesson 2..)

    This is happened already before, but i don't know how this can happen.
    3 - if you look at the outliner, there are some objects that aren't in the IFC project

    yes, really messy, sorry

    I think they should be deleted, and i maybe the n.2 problem is related to these...

    see above (I think..)

    Speaking about the ceilings (n.1), i don't know if the object has to be height only for the ceiling depth or has to be height all the ceiling space (like if it was a space)... i looked at this picture when i wrote the function

    but i don't know if i understand it correctly ....

    based on your comment I tested the flooring as well, I seems that it calculates it considering its thickness, in my case I normally use two distinct layers both IfcCovering (screed 3 cm for example) and tiling (including adhesive 2cm) and FinishFloorHeight given is 2cm, not 5cm..

    My impression ATM is that FinishFloorHeight and FinishCeilingHeight refer to absolute distance between their boundary line and their respective IfcBuildingStorey value, in other words not their thickness but their upper (floor) or lower (ceiling) elevation.

    Better explained here from the same web page:

    What do you think?

    I attached also the cleaned file

    grazie

  • edited April 3

    @steverugi this commit and this commit should improve the calculation ...

    steverugi
  • @Massimo said:
    2 - the ceiling predefined class is not assigned correctly to the ceiling object

    If you look at the picture, there is no predefined type and it should be "CEILING"
    Just click on edit, reassign the predefined type and save attributes, it should work.

    This is happened already before, but i don't know how this can happen.

    I just learned that the PredefinedType is inherited from the Type and, at the moment, it's not showed under Attributes tab but only under Object Metadata tab, so what i wrote is not correct ... if you want to know more about that, here there is the conversation.
    Anyway i have fixed the issue in this commit

    steverugi
Sign In or Register to comment.