diff --git a/src/bonsai/bonsai/bim/import_ifc.py b/src/bonsai/bonsai/bim/import_ifc.py index 02f066d3ee..a9374a3022 100644 --- a/src/bonsai/bonsai/bim/import_ifc.py +++ b/src/bonsai/bonsai/bim/import_ifc.py @@ -428,6 +428,7 @@ class IfcImporter: rep = representation while True: + # Tekla 2023 has missing items, though it's invalid IFC. if rep.Items and len(rep.Items) == 1 and rep.Items[0].is_a("IfcMappedItem"): rep_matrix = ifcopenshell.util.placement.get_mappeditem_transformation(rep.Items[0]) if not np.allclose(rep_matrix, np.eye(4)): diff --git a/src/ifcopenshell-python/ifcopenshell/util/representation.py b/src/ifcopenshell-python/ifcopenshell/util/representation.py index 53bf307c17..50ce20d044 100644 --- a/src/ifcopenshell-python/ifcopenshell/util/representation.py +++ b/src/ifcopenshell-python/ifcopenshell/util/representation.py @@ -294,6 +294,7 @@ def resolve_representation(representation: ifcopenshell.entity_instance) -> ifco :param representation: IfcRepresentation :return: Representation resolved from mappings """ + # Tekla 2023 has missing items and mapped representation, though it's invalid IFC. if ( len(representation.Items or []) == 1 and representation.Items[0].is_a("IfcMappedItem")