From b696d302f95ee90b87f06c66ae2f2c3143b40d26 Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Sun, 8 Aug 2021 20:24:44 +1000 Subject: [PATCH] Minor fix. See #1616. --- src/blenderbim/generate_demo_library.py | 9 ++++----- .../ifcopenshell/api/material/assign_material.py | 15 ++++++++------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/blenderbim/generate_demo_library.py b/src/blenderbim/generate_demo_library.py index 610af81587..2b17a510b6 100644 --- a/src/blenderbim/generate_demo_library.py +++ b/src/blenderbim/generate_demo_library.py @@ -1,6 +1,5 @@ import ifcopenshell import ifcopenshell.api -import ifcopenshell.util.element class LibraryGenerator: @@ -66,16 +65,16 @@ class LibraryGenerator: def create_layer_type(self, ifc_class, name, thickness): element = ifcopenshell.api.run("root.create_entity", self.file, ifc_class=ifc_class, name=name) - ifcopenshell.api.run("material.assign_material", self.file, product=element, type="IfcMaterialLayerSet") - layer_set = ifcopenshell.util.element.get_material(element) + rel = ifcopenshell.api.run("material.assign_material", self.file, product=element, type="IfcMaterialLayerSet") + layer_set = rel.RelatingMaterial layer = ifcopenshell.api.run("material.add_layer", self.file, layer_set=layer_set, material=self.material) layer.LayerThickness = thickness ifcopenshell.api.run("project.assign_declaration", self.file, definition=element, relating_context=self.project) def create_profile_type(self, ifc_class, name, profile): element = ifcopenshell.api.run("root.create_entity", self.file, ifc_class=ifc_class, name=name) - ifcopenshell.api.run("material.assign_material", self.file, product=element, type="IfcMaterialProfileSet") - profile_set = ifcopenshell.util.element.get_material(element) + rel = ifcopenshell.api.run("material.assign_material", self.file, product=element, type="IfcMaterialProfileSet") + profile_set = rel.RelatingMaterial material_profile = ifcopenshell.api.run( "material.add_profile", self.file, profile_set=profile_set, material=self.material ) diff --git a/src/ifcopenshell-python/ifcopenshell/api/material/assign_material.py b/src/ifcopenshell-python/ifcopenshell/api/material/assign_material.py index 2405d63f5a..4c0377c4c8 100644 --- a/src/ifcopenshell-python/ifcopenshell/api/material/assign_material.py +++ b/src/ifcopenshell-python/ifcopenshell/api/material/assign_material.py @@ -16,13 +16,13 @@ class Usecase: if material: ifcopenshell.api.run("material.unassign_material", self.file, product=self.settings["product"]) if self.settings["type"] == "IfcMaterial": - self.assign_ifc_material() + return self.assign_ifc_material() elif self.settings["type"] == "IfcMaterialConstituentSet": material_set = self.file.create_entity(self.settings["type"]) - self.create_material_association(material_set) + return self.create_material_association(material_set) elif self.settings["type"] == "IfcMaterialLayerSet": material_set = self.file.create_entity(self.settings["type"]) - self.create_material_association(material_set) + return self.create_material_association(material_set) elif self.settings["type"] == "IfcMaterialLayerSetUsage": element_type = ifcopenshell.util.element.get_type(self.settings["product"]) if element_type: @@ -34,10 +34,10 @@ class Usecase: else: material_set = self.file.create_entity("IfcMaterialLayerSet") material_set_usage = self.create_layer_set_usage(material_set) - self.create_material_association(material_set_usage) + return self.create_material_association(material_set_usage) elif self.settings["type"] == "IfcMaterialProfileSet": material_set = self.file.create_entity(self.settings["type"]) - self.create_material_association(material_set) + return self.create_material_association(material_set) elif self.settings["type"] == "IfcMaterialProfileSetUsage": element_type = ifcopenshell.util.element.get_type(self.settings["product"]) if element_type: @@ -51,11 +51,11 @@ class Usecase: self.update_representation_profile(material_set) material_set_usage = self.create_profile_set_usage(material_set) - self.create_material_association(material_set_usage) + return self.create_material_association(material_set_usage) elif self.settings["type"] == "IfcMaterialList": material_set = self.file.create_entity(self.settings["type"]) material_set.Materials = [self.settings["material"]] - self.create_material_association(material_set) + return self.create_material_association(material_set) def update_representation_profile(self, material_set): profile = material_set.CompositeProfile @@ -93,6 +93,7 @@ class Usecase: related_objects = list(rel.RelatedObjects) related_objects.append(self.settings["product"]) rel.RelatedObjects = related_objects + return rel def create_material_association(self, relating_material): return self.file.create_entity(