mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-18 03:19:53 +00:00
Accomodate deprecated IFC2X3 ways of relating type products
This commit is contained in:
@@ -365,9 +365,18 @@ class IfcImporter():
|
|||||||
new_prop.string_value = str(prop.NominalValue.wrappedValue)
|
new_prop.string_value = str(prop.NominalValue.wrappedValue)
|
||||||
|
|
||||||
def add_defines_by_type_relation(self, element, obj):
|
def add_defines_by_type_relation(self, element, obj):
|
||||||
if not hasattr(element, 'IsTypedBy') or not element.IsTypedBy:
|
if self.file.schema == 'IFC2X3':
|
||||||
return
|
if not hasattr(element, 'IsDefinedBy') or not element.IsDefinedBy:
|
||||||
obj.BIMObjectProperties.type_product = self.type_products[element.IsTypedBy[0].RelatingType.GlobalId]
|
return
|
||||||
|
for relationship in element.IsDefinedBy:
|
||||||
|
if relationship.is_a('IfcRelDefinesByType'):
|
||||||
|
related_type = relationship.RelatingType
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
if not hasattr(element, 'IsTypedBy') or not element.IsTypedBy:
|
||||||
|
return
|
||||||
|
related_type = element.IsTypedBy[0].RelatingType
|
||||||
|
obj.BIMObjectProperties.type_product = self.type_products[related_type.GlobalId]
|
||||||
|
|
||||||
def load_diff(self):
|
def load_diff(self):
|
||||||
if not self.ifc_import_settings.diff_file:
|
if not self.ifc_import_settings.diff_file:
|
||||||
|
|||||||
Reference in New Issue
Block a user