From e1403bd7cac76b59f5bb8089e872711a4865f2d3 Mon Sep 17 00:00:00 2001 From: Antti Tikka Date: Sat, 5 Sep 2020 19:22:02 +0300 Subject: [PATCH] Fix Align Island by Edge only working in Blender 2.83 --- op_island_align_edge.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/op_island_align_edge.py b/op_island_align_edge.py index b15eee7..1e6c7ad 100644 --- a/op_island_align_edge.py +++ b/op_island_align_edge.py @@ -126,9 +126,14 @@ def align_island(uv_vert0, uv_vert1, faces): loop[uv_layers].select = True diff = uv_vert1 - uv_vert0 - current_angle = math.atan2(diff.y, diff.x) + current_angle = math.atan2(diff.x, diff.y) angle_to_rotate = round(current_angle / (math.pi/2)) * (math.pi/2) - current_angle + # For some reason bpy.ops.transform.rotate rotates in the opposite + # direction in Blender 2.83 than in other versions. + if float(bpy.app.version_string[0:4]) == 2.83: + angle_to_rotate = -angle_to_rotate + bpy.ops.uv.select_linked() bpy.context.tool_settings.transform_pivot_point = 'CURSOR'