From 721fc9c1c95017d55785ea42e7ba473a0285b9ad Mon Sep 17 00:00:00 2001 From: Chris Blackbourn Date: Sun, 13 Nov 2022 12:27:28 +1300 Subject: UV: implement copy and paste for uv Implement a new topology-based copy and paste solution for UVs. Usage notes: * Open the UV Editor * Use the selection tools to select a Quad joined to a Triangle joined to another Quad. * From the menu, choose UV > UV Copy * The UV co-ordinates for your quad<=>tri<=>quad are now stored internally * Use the selection tools to select a different Quad joined to a Triangle joined to a Quad. * (Optional) From the menu, choose UV > Split > Selection * From the menu, choose UV > UV Paste * The UV co-ordinates for the new selection will be moved to match the stored UVs. Repeat selection / UV Paste steps as many times as desired. For performance considerations, see https://en.wikipedia.org/wiki/Graph_isomorphism_problem In theory, UV Copy and Paste should work with all UV selection modes. Please report any problems. A copy has been made of the Graph Isomorphism code from https://github.com/stefanoquer/graphISO Copyright (c) 2019 Stefano Quer stefano.quer@polito.it GPL v3 or later. Additional integration code Copyright (c) 2022 by Blender Foundation, GPL v2 or later. Maniphest Tasks: T77911 Differential Revision: https://developer.blender.org/D16278 --- release/scripts/startup/bl_ui/space_image.py | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'release/scripts') diff --git a/release/scripts/startup/bl_ui/space_image.py b/release/scripts/startup/bl_ui/space_image.py index fcbd7bb423d..f4c64831b3e 100644 --- a/release/scripts/startup/bl_ui/space_image.py +++ b/release/scripts/startup/bl_ui/space_image.py @@ -440,6 +440,11 @@ class IMAGE_MT_uvs(Menu): layout.separator() + layout.operator("uv.copy") + layout.operator("uv.paste") + + layout.separator() + layout.menu("IMAGE_MT_uvs_showhide") layout.separator() -- cgit v1.2.3