I don’t really know if these issues are bug reports or feature request, or perhaps a combination. I am duplicating the general description and will create 3 issues so they can be independently tracked.
I am having several problems using IfcConvert to create 2d drawings. I am not sure if it is my use of it, bugs in the conversion or problems with the IFC (I am completely new to both BIM and IfcConvert so I don’t always know where the problem lies).
The use case is to create heatmaps on top of the floor plans, one per story, of a building (literally heatmaps – they are for showing the temperature). This will be displayed in a website. (The site won’t be used for architectural purposes, more for surveilling the state of the building.) The IFC contains the walls, spaces, doors, etc. plus a set of IfcEnergyConversionDevice which are the objects that represent the position of the temperature sensors. The 3D model is created in Autodesk Revit and exported as IFC (the model is used for other uses – I don’t have much control over how it is built/exported).
I feel that I am very close to getting what I need out of IfcConvert, but that it isn’t quite possible to do it. (I would love to be proven wrong!)
Problem 2 – IfcEnergyConversionDevice performance
The IFC model contains about 60-70 IfcEnergyConversionDevice per story. Adding these into the generation causes an enormous performance hit (instead of a few minutes, it takes many hours) . Worse, the vast majority are not included in the final SVG (this is my next problem... to be created).
I ultimately need the position x,y (and maybe w,h) of the device on the image so I can display the heatmap and provide a clickable zone to show detailed information (for example, historical readings for that sensor).
In investigating a bit, it seems like each one is a complex 3d model (I am trying to get this changed… but the model is built by someone else). Putting it in the debugger, I notice that it is often in the function HLRBRep_InternalAlgo::Hide with n about 3000 (and since this function is n^2, this does about 10,000,000 iterations per call).
As the needs of the application is just to have the bounding box for these objects, I was wondering if it is possible to collapse the shape of some objects into its bounding cube before processing? (Just of a particular type… I still want the shapes of the walls, etc.) I didn’t see any option to do so. If it isn’t possible, it would be nice to add as a feature. It could speed up processing for this sort of use-case. (If someone knows of a tool to pre-process the IFC before sending it to IfcConvert, that would work too. I would like it to be automatable – so a command line rather than a UI)
I don’t really know if these issues are bug reports or feature request, or perhaps a combination. I am duplicating the general description and will create 3 issues so they can be independently tracked.
I am having several problems using IfcConvert to create 2d drawings. I am not sure if it is my use of it, bugs in the conversion or problems with the IFC (I am completely new to both BIM and IfcConvert so I don’t always know where the problem lies).
The use case is to create heatmaps on top of the floor plans, one per story, of a building (literally heatmaps – they are for showing the temperature). This will be displayed in a website. (The site won’t be used for architectural purposes, more for surveilling the state of the building.) The IFC contains the walls, spaces, doors, etc. plus a set of IfcEnergyConversionDevice which are the objects that represent the position of the temperature sensors. The 3D model is created in Autodesk Revit and exported as IFC (the model is used for other uses – I don’t have much control over how it is built/exported).
I feel that I am very close to getting what I need out of IfcConvert, but that it isn’t quite possible to do it. (I would love to be proven wrong!)
Problem 2 – IfcEnergyConversionDevice performance
The IFC model contains about 60-70 IfcEnergyConversionDevice per story. Adding these into the generation causes an enormous performance hit (instead of a few minutes, it takes many hours) . Worse, the vast majority are not included in the final SVG (this is my next problem... to be created).
I ultimately need the position x,y (and maybe w,h) of the device on the image so I can display the heatmap and provide a clickable zone to show detailed information (for example, historical readings for that sensor).
In investigating a bit, it seems like each one is a complex 3d model (I am trying to get this changed… but the model is built by someone else). Putting it in the debugger, I notice that it is often in the function HLRBRep_InternalAlgo::Hide with n about 3000 (and since this function is n^2, this does about 10,000,000 iterations per call).
As the needs of the application is just to have the bounding box for these objects, I was wondering if it is possible to collapse the shape of some objects into its bounding cube before processing? (Just of a particular type… I still want the shapes of the walls, etc.) I didn’t see any option to do so. If it isn’t possible, it would be nice to add as a feature. It could speed up processing for this sort of use-case. (If someone knows of a tool to pre-process the IFC before sending it to IfcConvert, that would work too. I would like it to be automatable – so a command line rather than a UI)