I am working on a project requiring adding custom attributes (e.g., LOD-I, LOD-G, OmniClassCode, etc.) for all IFC Entities I have classified in SketchUp. However, it seems SketchUp does not have an extension allowing me to create these custom attributes automatically. I have to manually create the attributes for each IFC entity using the “Rtches BIM Utilities” extension, which is quite time-consuming for a complex model.
Therefore, I am exploring an alternative way to create the attributes automatically.
Step 1: I classify the IFC Entities and export the model as an IFC file using the “IFC Manager” extension.
Step 2: I create a report containing the Entity IDs using the “Find and Report” extension and export it as an Excel.
Step 3: I add columns to input the field names and attributes for all Entities.
Step 4: I use an in-house program with IfcOpenShell to search for the Entity IDs in the IFC file and link them up with the Entity IDs in Excel. The program will then automatically modify the IFC file and add the attributes (from Excel) under each Entity ID.
However, the Entity IDs listed in Excel are all integers, while some Entity IDs searched from the IFC file are decimals/ floats. Following the logic mentioned above, some Entity IDs with decimals/ floats cannot be mapped with the integer Entity IDs listed in Excel. So, the attributes of the decimal/ float Entity IDs will be missed.
The initial solution is to use our in-house program to search for the integral part of the Entity IDs in the IFC file. Then, it will map the searched integral parts with the integer Entity IDs listed in Excel. After that, it can add the attributes to the IFC file according to the Entity IDs. For this solution, I assume that integer and decimal/ float Entity IDs with the same integral part originally refer to the same element in SketchUp. But for unknown reasons, after exporting the IFC file from SketchUp, one element (i.e. IfcGeographicElement) was separated into two parts (ie. Building Element and Tree) represented by integer and decimal/ float Entity IDs in the IFC file.
In the actual case, the program searches for the integral part “43280” in the IFC file and returns two results: 43280 and 43280.6962. Accordingly, it maps the attributes of Entity ID 43280 in Excel to both Entity IDs 43280 and 43280.6962 in the IFC file. So, 43280 and 43280.6962 Entity IDs contain the same attributes after this processing. After that, I open the updated IFC file in BIMVision; no element is highlighted when I click on the integer Entity ID (name = Building
Element). But it does highlight one element when I click on the decimal/ float Entity ID (name = Tree).
So,my question is, why do the decimal/ float Entity IDs exist after exporting the IFC file from SketchUp? Understanding this reason will help confirm whether the proposed solution, logic, and assumptions are valid.
This is a complex issue, and I hope this explanation clarifies the situation…