diff --git a/core/shape.py b/core/shape.py index 9eef4ef..be38a9a 100644 --- a/core/shape.py +++ b/core/shape.py @@ -148,8 +148,8 @@ def get_picker_data(collection): canvas_coords = [canvas.matrix_world@Vector((p.co)) for p in canvas_points] - height = abs(max(canvas_coords).y - min(canvas_coords).y) - width = abs(max(canvas_coords).x - min(canvas_coords).x) + height = abs(max(co.y for co in canvas_coords) - min(co.y for co in canvas_coords)) + width = abs(max(co.x for co in canvas_coords) - min(co.x for co in canvas_coords)) center = sum(canvas_coords, Vector()) / len(canvas_coords) scale = 2048 / max(height, width)# Reference height for the canvas diff --git a/operators/shape.py b/operators/shape.py index 6825a77..d4e478c 100644 --- a/operators/shape.py +++ b/operators/shape.py @@ -95,7 +95,7 @@ class RP_OT_mirror_shape(Operator): continue for mod in ob.modifiers: - if (mod.type == 'NODES' and mod.node_group.name == 'Symmetrize' and + if (mod.type == 'NODES' and mod.node_group and mod.node_group.name == 'Symmetrize' and mod.get('Socket_2') in objects): bpy.data.objects.remove(ob) @@ -124,7 +124,7 @@ class RP_OT_mirror_shape(Operator): for mod in list(flipped_object.modifiers): flipped_object.modifiers.remove(mod) - # Add symmetrize modifier + # Add symmetrize modifier TODO add it into a resource mod = flipped_object.modifiers.new(name='Symmetrize', type='NODES') mod.node_group = bpy.data.node_groups['Symmetrize'] mod['Socket_2'] = ob