mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-10-02 13:04:49 +00:00
Fix #1496. Mirrored elements have their placements correctly synced.
This commit is contained in:
@@ -198,12 +198,13 @@ class UpdateRepresentation(bpy.types.Operator):
|
|||||||
settings = tool.Boundary.get_assign_connection_geometry_settings(obj)
|
settings = tool.Boundary.get_assign_connection_geometry_settings(obj)
|
||||||
ifcopenshell.api.run("boundary.assign_connection_geometry", tool.Ifc.get(), **settings)
|
ifcopenshell.api.run("boundary.assign_connection_geometry", tool.Ifc.get(), **settings)
|
||||||
return
|
return
|
||||||
elif material and material.is_a() in ["IfcMaterialProfileSet", "IfcMaterialLayerSet"]:
|
|
||||||
# These objects are parametrically based on an axis and should not be modified as a mesh
|
|
||||||
return
|
|
||||||
|
|
||||||
core.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj)
|
core.edit_object_placement(tool.Ifc, tool.Geometry, tool.Surveyor, obj=obj)
|
||||||
|
|
||||||
|
if material and material.is_a() in ["IfcMaterialProfileSet", "IfcMaterialLayerSet"]:
|
||||||
|
# These objects are parametrically based on an axis and should not be modified as a mesh
|
||||||
|
return
|
||||||
|
|
||||||
old_representation = self.file.by_id(obj.data.BIMMeshProperties.ifc_definition_id)
|
old_representation = self.file.by_id(obj.data.BIMMeshProperties.ifc_definition_id)
|
||||||
context_of_items = old_representation.ContextOfItems
|
context_of_items = old_representation.ContextOfItems
|
||||||
|
|
||||||
|
|||||||
@@ -263,6 +263,8 @@ class ExtendProfile(bpy.types.Operator, tool.Ifc.Operator):
|
|||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
if not context.active_object:
|
if not context.active_object:
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
for obj in selected_objs:
|
||||||
|
tool.Geometry.clear_scale(obj)
|
||||||
if len(selected_objs) == 1:
|
if len(selected_objs) == 1:
|
||||||
joiner.join_E(context.active_object, context.scene.cursor.location)
|
joiner.join_E(context.active_object, context.scene.cursor.location)
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|||||||
@@ -94,6 +94,8 @@ class JoinWall(bpy.types.Operator, tool.Ifc.Operator):
|
|||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
if not context.active_object:
|
if not context.active_object:
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
for obj in selected_objs:
|
||||||
|
tool.Geometry.clear_scale(obj)
|
||||||
if len(selected_objs) == 1:
|
if len(selected_objs) == 1:
|
||||||
joiner.join_E(context.active_object, context.scene.cursor.location)
|
joiner.join_E(context.active_object, context.scene.cursor.location)
|
||||||
return {"FINISHED"}
|
return {"FINISHED"}
|
||||||
|
|||||||
Reference in New Issue
Block a user