mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-09-18 22:33:33 +00:00
Assign / Unassign Constraint executes on all selected objects
This commit is contained in:
@@ -187,17 +187,21 @@ class AssignConstraint(bpy.types.Operator):
|
|||||||
return IfcStore.execute_ifc_operator(self, context)
|
return IfcStore.execute_ifc_operator(self, context)
|
||||||
|
|
||||||
def _execute(self, context):
|
def _execute(self, context):
|
||||||
obj = bpy.data.objects.get(self.obj) if self.obj else context.active_object
|
|
||||||
self.file = IfcStore.get_file()
|
self.file = IfcStore.get_file()
|
||||||
ifcopenshell.api.run(
|
objs = [bpy.data.objects.get(self.obj)] if self.obj else context.selected_objects
|
||||||
"constraint.assign_constraint",
|
for obj in objs:
|
||||||
self.file,
|
obj_id = obj.BIMObjectProperties.ifc_definition_id
|
||||||
**{
|
if not obj_id:
|
||||||
"product": self.file.by_id(obj.BIMObjectProperties.ifc_definition_id),
|
continue
|
||||||
"constraint": self.file.by_id(self.constraint),
|
ifcopenshell.api.run(
|
||||||
}
|
"constraint.assign_constraint",
|
||||||
)
|
self.file,
|
||||||
Data.load(IfcStore.get_file(), obj.BIMObjectProperties.ifc_definition_id)
|
**{
|
||||||
|
"product": self.file.by_id(obj_id),
|
||||||
|
"constraint": self.file.by_id(self.constraint),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
Data.load(self.file, obj_id)
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|
||||||
|
|
||||||
@@ -212,15 +216,19 @@ class UnassignConstraint(bpy.types.Operator):
|
|||||||
return IfcStore.execute_ifc_operator(self, context)
|
return IfcStore.execute_ifc_operator(self, context)
|
||||||
|
|
||||||
def _execute(self, context):
|
def _execute(self, context):
|
||||||
obj = bpy.data.objects.get(self.obj) if self.obj else context.active_object
|
|
||||||
self.file = IfcStore.get_file()
|
self.file = IfcStore.get_file()
|
||||||
ifcopenshell.api.run(
|
objs = [bpy.data.objects.get(self.obj)] if self.obj else context.selected_objects
|
||||||
"constraint.unassign_constraint",
|
for obj in objs:
|
||||||
self.file,
|
obj_id = obj.BIMObjectProperties.ifc_definition_id
|
||||||
**{
|
if not obj_id:
|
||||||
"product": self.file.by_id(obj.BIMObjectProperties.ifc_definition_id),
|
continue
|
||||||
"constraint": self.file.by_id(self.constraint),
|
ifcopenshell.api.run(
|
||||||
}
|
"constraint.unassign_constraint",
|
||||||
)
|
self.file,
|
||||||
Data.load(IfcStore.get_file(), obj.BIMObjectProperties.ifc_definition_id)
|
**{
|
||||||
|
"product": self.file.by_id(obj_id),
|
||||||
|
"constraint": self.file.by_id(self.constraint),
|
||||||
|
}
|
||||||
|
)
|
||||||
|
Data.load(self.file, obj_id)
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|||||||
Reference in New Issue
Block a user