A
by agonzalezesteve on 24 Feb 2022, edited 24 Feb 2022
#
@brunopostle
From the IFC, now the CorrespondingBoundaries set adjencies.

But there are still faces that are pointing inwards the IfcSpaces.

Some interior roofs are considered as floors. Tagging surfaces as roof/floor/wall it's automatic, so this will be because they're pointing inwards de IfcSpace.

A
by agonzalezesteve on 24 Feb 2022
#
@brunopostle
From the gbxml, surfaces are pointing outwards.

But there are spaces without roof or even floor as a roof.

In addition, interior and ground surfaces are imported as adiabatic...

B
by brunopostle on 24 Feb 2022
#
@agonzalezesteve said:
But there are still faces that are pointing inwards the IfcSpaces.

I don't understand this, they all have outward facing normals in blender:

B
by brunopostle on 24 Feb 2022, edited 24 Feb 2022
#
@agonzalezesteve said:
But there are spaces without roof or even floor as a roof.

This is a stair core, there are Spaces for each storey, but the boundaries between them are .VIRTUAL., .INTERNAL.
and the CorrespondingElement is IfcVirtualElement.
B
by brunopostle on 24 Feb 2022
#
@agonzalezesteve said:
In addition, interior and ground surfaces are imported as adiabatic...
I'll investigate. This IFC to gbXML script appears to have been written for IFC2x3, so it is likely that things like this are broken.
A
by agonzalezesteve on 24 Feb 2022
#
We could export to gbXML through OpenStudio.
T
by topologic on 24 Feb 2022
#
+4 votes
Here is the process to go from the IFC file to gbxml through Sverchok/Topologic/BIM2BEM
You can find the needed template and weather files on github at:
https://github.com/wassimj/TopologicSverchok/tree/main/examples/TopologicEnergy

T
by topologic on 24 Feb 2022
#
+2 votes
Here is the gbxml file (zipped)
B
by brunopostle on 26 Feb 2022
#
+1 votes
@agonzalezesteve I may have fixed the issues with normal directions, here's a new IFC (and a gbXML generated from it using the IFC to gbXML converter script).
A
by agonzalezesteve on 1 Mar 2022, edited 1 Mar 2022
#
@brunopostle The normal direction of the plane should be solved, but the vertices are not reordered.
A
by agonzalezesteve on 1 Mar 2022
#
I solved it adding a patch that checks if the order of vertices follow the normal of the plane.
Now there are still a couple of surfaces that are incorrect.


B
by brunopostle on 1 Mar 2022
#
+1 votes
@agonzalezesteve thanks, I wrote a method that calculates the normal from the vertex order, but haven't had a chance to compare this with the Topologic Face normal. All these normal directions appear correct when I display the boundaries in blenderbim, so I'm thinking that the IfcOpenShell geometry generator isn't necessarily following our expectations.
B
by brunopostle on 1 Mar 2022
#
@agonzalezesteve said:
@brunopostle The normal direction of the plane should be solved, but the vertices are not reordered.
This is a separate method that generates an IfcFaceSurface for the structural model (and the normals for this are not critical, I think). The boundaries are each an IfcCurveBoundedPlane, and are generated by different code.
A
by agonzalezesteve on 1 Mar 2022
#
@brunopostle now I'm dealing with EXTERNAL IfcSpaces.

IfcSpacesBoundaries could also be tagged according to the boundary condition using IfcInternalOrExternalEnum.
B
by brunopostle on 1 Mar 2022
#
@agonzalezesteve said:
IfcSpacesBoundaries could also be tagged according to the boundary condition using IfcInternalOrExternalEnum.
I'm already doing INTERNAL
and EXTERNAL
, but I should also tag EXTERNAL_EARTH
and EXTERNAL_FIRE
B
by brunopostle on 2 Mar 2022
#
@agonzalezesteve Thanks for testing these files, attached another attempt to fix the direction of the face boundaries.
A
by agonzalezesteve on 3 Mar 2022
#
+1 votes
@brunopostle Now all the surface point outwards the space.
B
by brunopostle on 11 Mar 2022
#
@agonzalezesteve here is another model with EXTERNAL_FIRE
and EXTERNAL_EARTH
set, in both IFC and gbXML format. I also used some of your code to drop the OCC dependency from the IFC_gbXML_Convert.py script (so this is now just pure ifcopenshell).
D
by duncan on 16 Nov 2022, edited 16 Nov 2022
#
Please promote
https://fosstodon.org/@osarch/109353814350341078
https://www.linkedin.com/feed/update/urn:li:activity:6998643425650601986
https://twitter.com/OSArchOrg/status/1592880166224609280
buildingSmart forum: https://forums.buildingsmart.org/t/about-the-bim-bem-idm-development-category/4172
Jeffrey Ouellette writes
So, after 4 years of work, the help of my co-authors (Mirbek Bekboliev and Paul Woodard), and the generous feedback from an international panel of BEM subject matter experts, the technical report on developing #openBIM-based #interoperability solutions has finally been approved and published by the buildingSMART International community.
You can find it on the Standards Library page of buildingSMART.org https://lnkd.in/gycXFgjm or directly at this link:
< https://lnkd.in/gTdBvJ-X >
The goal is NOT to solve all challenges for Building Information Modeling (BIM) and Building Energy Modeling (BEM) workflows, but to lay the groundwork for finding practical, open, standardized solutions for getting the right information into the right hands at the right time. There is still work to do to create the solutions, but this should help get the industry started.
"A problem well put is half solved" - John Dewey, American philosopher (1859-1952).
Detailed feedback and interest in pursuing further solutions development can be expressed on the buildingSMART Forums < https://lnkd.in/gts3uUAi >
B
by brunopostle on 5 Nov 2023
#
+5 votes
An update on the IFC to gbXML converter. I fixed lots of broken stuff in this tool, it now supports IFC2X3 and IFC4 (though it still assumes SI units, this needs fixing).
It generates valid gbXML from the IFC Spaces and Space Boundaries created in BlenderBIM using the Spatial Tool, so you should be able to export gbXML like so:
import blenderbim.tool
from ifcgbxml import create_gbxml
root = create_gbxml(blenderbim.tool.Ifc.get())
root.writexml(open("output.xml", "w"), indent=" ", addindent=" ", newl="\n")
A
by Andyro on 23 Aug 2024
#
Anyone want to help write this into BBim directly? Sure it's not a dynamic hourly modeller, but from our limited tests (20 buildings) we're within 1% of actual utility bills.... the goal of developing this tool was to close the performance gap we see between energy model projections and actual results... right now it's a simple spreadsheet, but could be coded to math nodes in BBim. https://openbuilding.ca/wp-content/uploads/2024/08/TEUI-v3.015.xlsx (link to the spreadsheet from our site). Link to the article about the tool: https://openbuilding.ca/2024/07/24/teui3-and-occams-razor/