mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-20 06:58:56 +00:00
Fix error unassigning type from element without representation
Traceback
Traceback (most recent call last):
File "\bonsai\bim\module\type\operator.py", line 63, in execute
return IfcStore.execute_ifc_operator(self, context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\bim\ifc.py", line 408, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\bim\module\type\operator.py", line 78, in _execute
active_context = active_representation.ContextOfItems
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'ContextOfItems'
Error: Python: Traceback (most recent call last):
File "\bonsai\bim\ifc.py", line 408, in execute_ifc_operator
result = getattr(operator, "_execute")(context)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "\bonsai\bim\module\type\operator.py", line 78, in _execute
active_context = active_representation.ContextOfItems
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'ContextOfItems'
This commit is contained in:
@@ -74,11 +74,10 @@ class UnassignType(bpy.types.Operator):
|
|||||||
continue
|
continue
|
||||||
ifcopenshell.api.run("type.unassign_type", self.file, related_objects=[element])
|
ifcopenshell.api.run("type.unassign_type", self.file, related_objects=[element])
|
||||||
|
|
||||||
active_representation = tool.Geometry.get_active_representation(obj)
|
|
||||||
active_context = active_representation.ContextOfItems
|
|
||||||
new_active_representation = None
|
|
||||||
|
|
||||||
if element.Representation:
|
if element.Representation:
|
||||||
|
new_active_representation = None
|
||||||
|
active_representation = tool.Geometry.get_active_representation(obj)
|
||||||
|
active_context = active_representation.ContextOfItems
|
||||||
representations = []
|
representations = []
|
||||||
for representation in element.Representation.Representations:
|
for representation in element.Representation.Representations:
|
||||||
resolved_representation = ifcopenshell.util.representation.resolve_representation(representation)
|
resolved_representation = ifcopenshell.util.representation.resolve_representation(representation)
|
||||||
@@ -97,16 +96,16 @@ class UnassignType(bpy.types.Operator):
|
|||||||
new_active_representation = copied_representation
|
new_active_representation = copied_representation
|
||||||
element.Representation.Representations = representations
|
element.Representation.Representations = representations
|
||||||
|
|
||||||
if new_active_representation:
|
if new_active_representation:
|
||||||
bonsai.core.geometry.switch_representation(
|
bonsai.core.geometry.switch_representation(
|
||||||
tool.Ifc,
|
tool.Ifc,
|
||||||
tool.Geometry,
|
tool.Geometry,
|
||||||
obj=obj,
|
obj=obj,
|
||||||
representation=new_active_representation,
|
representation=new_active_representation,
|
||||||
should_reload=False,
|
should_reload=False,
|
||||||
is_global=False,
|
is_global=False,
|
||||||
should_sync_changes_first=False,
|
should_sync_changes_first=False,
|
||||||
)
|
)
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user