From 21c4433c7507f907288a4a00b8dad26788eff1ca Mon Sep 17 00:00:00 2001 From: Dion Moult Date: Thu, 8 Jul 2021 18:00:41 +1000 Subject: [PATCH] Allow setting to toggle cascading of edited object placements --- .../ifcopenshell/api/geometry/edit_object_placement.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ifcopenshell-python/ifcopenshell/api/geometry/edit_object_placement.py b/src/ifcopenshell-python/ifcopenshell/api/geometry/edit_object_placement.py index 3dbe7230cc..7764cd1af5 100644 --- a/src/ifcopenshell-python/ifcopenshell/api/geometry/edit_object_placement.py +++ b/src/ifcopenshell-python/ifcopenshell/api/geometry/edit_object_placement.py @@ -7,7 +7,7 @@ import ifcopenshell.util.placement class Usecase: def __init__(self, file, **settings): self.file = file - self.settings = {"product": None, "matrix": np.eye(4)} + self.settings = {"product": None, "matrix": np.eye(4), "should_cascade": True} for key, value in settings.items(): self.settings[key] = value @@ -17,7 +17,7 @@ class Usecase: self.unit_scale = ifcopenshell.util.unit.calculate_unit_scale(self.file) dependent_objects = [] - if self.settings["product"].ObjectPlacement: + if self.settings["should_cascade"] and self.settings["product"].ObjectPlacement: for referenced_placement in self.settings["product"].ObjectPlacement.ReferencedByPlacements: for placed_obj in referenced_placement.PlacesObject: dependent_objects.append(