From cc56b808ca8338fe5d2b3ff1aba65429025cacf5 Mon Sep 17 00:00:00 2001 From: Nutti <nutti.metro@gmail.com> Date: Sat, 24 Feb 2018 11:37:05 +0900 Subject: [PATCH] Magic UV: Release v5.1 Fixed bugs --- uv_magic_uv/__init__.py | 6 ++-- uv_magic_uv/common.py | 32 ++++++++++++------ uv_magic_uv/op/__init__.py | 4 +-- uv_magic_uv/op/align_uv.py | 33 ++----------------- uv_magic_uv/op/align_uv_cursor.py | 4 +-- uv_magic_uv/op/copy_paste_uv.py | 4 +-- uv_magic_uv/op/copy_paste_uv_object.py | 4 +-- uv_magic_uv/op/copy_paste_uv_uvedit.py | 4 +-- uv_magic_uv/op/flip_rotate_uv.py | 4 +-- uv_magic_uv/op/mirror_uv.py | 4 +-- uv_magic_uv/op/move_uv.py | 4 +-- uv_magic_uv/op/pack_uv.py | 4 +-- uv_magic_uv/op/preserve_uv_aspect.py | 4 +-- uv_magic_uv/op/smooth_uv.py | 4 +-- uv_magic_uv/op/texture_lock.py | 4 +-- uv_magic_uv/op/texture_projection.py | 4 +-- uv_magic_uv/op/texture_wrap.py | 4 +-- uv_magic_uv/op/transfer_uv.py | 4 +-- uv_magic_uv/op/unwrap_constraint.py | 4 +-- uv_magic_uv/op/uv_bounding_box.py | 13 ++++++-- uv_magic_uv/op/uv_inspection.py | 4 +-- uv_magic_uv/op/uv_sculpt.py | 11 +++++-- uv_magic_uv/op/uvw.py | 4 +-- uv_magic_uv/op/world_scale_uv.py | 4 +-- uv_magic_uv/preferences.py | 4 +-- uv_magic_uv/properites.py | 14 ++++++-- uv_magic_uv/ui/__init__.py | 4 +-- uv_magic_uv/ui/uvedit_copy_paste_uv.py | 4 +-- uv_magic_uv/ui/uvedit_editor_enhance.py | 4 +-- uv_magic_uv/ui/uvedit_uv_manipulation.py | 4 +-- .../ui/view3d_copy_paste_uv_editmode.py | 4 +-- .../ui/view3d_copy_paste_uv_objectmode.py | 4 +-- uv_magic_uv/ui/view3d_uv_manipulation.py | 4 +-- uv_magic_uv/ui/view3d_uv_mapping.py | 4 +-- 34 files changed, 114 insertions(+), 107 deletions(-) diff --git a/uv_magic_uv/__init__.py b/uv_magic_uv/__init__.py index 97f8bb791..080d2414f 100644 --- a/uv_magic_uv/__init__.py +++ b/uv_magic_uv/__init__.py @@ -20,15 +20,15 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" bl_info = { "name": "Magic UV", "author": "Nutti, Mifth, Jace Priester, kgeogeo, mem, imdjs" "Keith (Wahooney) Boshoff, McBuff, MaxRobinot, Alexander Milovsky", - "version": (5, 0, 0), + "version": (5, 1, 0), "blender": (2, 79, 0), "location": "See Add-ons Preferences", "description": "UV Toolset. See Add-ons Preferences for details", diff --git a/uv_magic_uv/common.py b/uv_magic_uv/common.py index dc8876a05..6d3d9df7e 100644 --- a/uv_magic_uv/common.py +++ b/uv_magic_uv/common.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from collections import defaultdict from pprint import pprint @@ -295,11 +295,23 @@ def measure_uv_area(obj): for f in sel_faces: uvs = [l[uv_layer].uv for l in f.loops] f_uv_area = calc_polygon_2d_area(uvs) - if tex_layer: - img = f[tex_layer].image - if not img: - return None - uv_area = uv_area + f_uv_area * img.size[0] * img.size[1] + + if not tex_layer: + return None + img = f[tex_layer].image + # not found, try to search from node + if not img: + for mat in obj.material_slots: + for node in mat.material.node_tree.nodes: + tex_node_types = [ + 'TEX_ENVIRONMENT', + 'TEX_IMAGE', + ] + if (node.type in tex_node_types) and node.image: + img = node.image + if not img: + return None + uv_area = uv_area + f_uv_area * img.size[0] * img.size[1] return uv_area @@ -565,7 +577,7 @@ def __get_loop_sequence_internal(uv_layer, pairs, island_info, closed): return loop_sequences, "" -def get_loop_sequences(bm, uv_layer): +def get_loop_sequences(bm, uv_layer, closed=False): sel_faces = [f for f in bm.faces if f.select] # get candidate loops @@ -581,11 +593,11 @@ def get_loop_sequences(bm, uv_layer): first_loop = cand_loops[0] isl_info = get_island_info_from_bmesh(bm, False) loop_pairs = __get_loop_pairs(first_loop, uv_layer) - loop_pairs, err = __sort_loop_pairs(uv_layer, loop_pairs, False) + loop_pairs, err = __sort_loop_pairs(uv_layer, loop_pairs, closed) if not loop_pairs: return None, err loop_seqs, err = __get_loop_sequence_internal(uv_layer, loop_pairs, - isl_info, False) + isl_info, closed) if not loop_seqs: return None, err diff --git a/uv_magic_uv/op/__init__.py b/uv_magic_uv/op/__init__.py index 0b93c96ab..75885ef6a 100644 --- a/uv_magic_uv/op/__init__.py +++ b/uv_magic_uv/op/__init__.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" if "bpy" in locals(): import importlib diff --git a/uv_magic_uv/op/align_uv.py b/uv_magic_uv/op/align_uv.py index f90f02ffa..dcfb57c3f 100644 --- a/uv_magic_uv/op/align_uv.py +++ b/uv_magic_uv/op/align_uv.py @@ -20,8 +20,8 @@ __author__ = "imdjs, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import math from math import atan2, tan, sin, cos @@ -34,33 +34,6 @@ from bpy.props import EnumProperty, BoolProperty from .. import common -def get_closed_loop_sequences(bm, uv_layer): - sel_faces = [f for f in bm.faces if f.select] - - # get candidate loops - cand_loops = [] - for f in sel_faces: - for l in f.loops: - if l[uv_layer].select: - cand_loops.append(l) - - if len(cand_loops) < 2: - return None, "More than 2 UVs must be selected" - - first_loop = cand_loops[0] - isl_info = common.get_island_info_from_bmesh(bm, False) - loop_pairs = common.get_loop_pairs(first_loop, uv_layer) - loop_pairs, err = common.sort_loop_pairs(uv_layer, loop_pairs, True) - if not loop_pairs: - return None, err - loop_seqs, err = common.get_loop_sequence_internal(uv_layer, loop_pairs, - isl_info, True) - if not loop_seqs: - return None, err - - return loop_seqs, "" - - # get sum vertex length of loop sequences def get_loop_vert_len(loops): length = 0 @@ -143,7 +116,7 @@ class MUV_AUVCircle(bpy.types.Operator): uv_layer = bm.loops.layers.uv.verify() # loop_seqs[horizontal][vertical][loop] - loop_seqs, error = get_closed_loop_sequences(bm, uv_layer) + loop_seqs, error = common.get_loop_sequences(bm, uv_layer, True) if not loop_seqs: self.report({'WARNING'}, error) return {'CANCELLED'} diff --git a/uv_magic_uv/op/align_uv_cursor.py b/uv_magic_uv/op/align_uv_cursor.py index b33dc68ee..cae1c89a5 100644 --- a/uv_magic_uv/op/align_uv_cursor.py +++ b/uv_magic_uv/op/align_uv_cursor.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy from mathutils import Vector diff --git a/uv_magic_uv/op/copy_paste_uv.py b/uv_magic_uv/op/copy_paste_uv.py index 3aac3f6de..ee89b5e96 100644 --- a/uv_magic_uv/op/copy_paste_uv.py +++ b/uv_magic_uv/op/copy_paste_uv.py @@ -20,8 +20,8 @@ __author__ = "imdjs, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import math from math import atan2, sin, cos diff --git a/uv_magic_uv/op/copy_paste_uv_object.py b/uv_magic_uv/op/copy_paste_uv_object.py index eb42d99ae..d80ee4152 100644 --- a/uv_magic_uv/op/copy_paste_uv_object.py +++ b/uv_magic_uv/op/copy_paste_uv_object.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/copy_paste_uv_uvedit.py b/uv_magic_uv/op/copy_paste_uv_uvedit.py index 5b64505ea..96908020a 100644 --- a/uv_magic_uv/op/copy_paste_uv_uvedit.py +++ b/uv_magic_uv/op/copy_paste_uv_uvedit.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>, Jace Priester" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import math from math import atan2, sin, cos diff --git a/uv_magic_uv/op/flip_rotate_uv.py b/uv_magic_uv/op/flip_rotate_uv.py index 907c77c48..30f6b0f7c 100644 --- a/uv_magic_uv/op/flip_rotate_uv.py +++ b/uv_magic_uv/op/flip_rotate_uv.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/mirror_uv.py b/uv_magic_uv/op/mirror_uv.py index d1014c734..f4849d18b 100644 --- a/uv_magic_uv/op/mirror_uv.py +++ b/uv_magic_uv/op/mirror_uv.py @@ -20,8 +20,8 @@ __author__ = "Keith (Wahooney) Boshoff, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy from bpy.props import ( diff --git a/uv_magic_uv/op/move_uv.py b/uv_magic_uv/op/move_uv.py index e0ac418f7..6382376cf 100644 --- a/uv_magic_uv/op/move_uv.py +++ b/uv_magic_uv/op/move_uv.py @@ -20,8 +20,8 @@ __author__ = "kgeogeo, mem, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/pack_uv.py b/uv_magic_uv/op/pack_uv.py index 692fa93e6..a780af3e7 100644 --- a/uv_magic_uv/op/pack_uv.py +++ b/uv_magic_uv/op/pack_uv.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from math import fabs diff --git a/uv_magic_uv/op/preserve_uv_aspect.py b/uv_magic_uv/op/preserve_uv_aspect.py index 9838aec60..bc2f1b81e 100644 --- a/uv_magic_uv/op/preserve_uv_aspect.py +++ b/uv_magic_uv/op/preserve_uv_aspect.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/smooth_uv.py b/uv_magic_uv/op/smooth_uv.py index 6a120d087..aa9b22c09 100644 --- a/uv_magic_uv/op/smooth_uv.py +++ b/uv_magic_uv/op/smooth_uv.py @@ -20,8 +20,8 @@ __author__ = "imdjs, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/texture_lock.py b/uv_magic_uv/op/texture_lock.py index b0be35346..d6c56f5af 100644 --- a/uv_magic_uv/op/texture_lock.py +++ b/uv_magic_uv/op/texture_lock.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import math from math import atan2, cos, sqrt, sin, fabs diff --git a/uv_magic_uv/op/texture_projection.py b/uv_magic_uv/op/texture_projection.py index 9c2dc521c..77a81aa0a 100644 --- a/uv_magic_uv/op/texture_projection.py +++ b/uv_magic_uv/op/texture_projection.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from collections import namedtuple diff --git a/uv_magic_uv/op/texture_wrap.py b/uv_magic_uv/op/texture_wrap.py index 91b067041..01e507bda 100644 --- a/uv_magic_uv/op/texture_wrap.py +++ b/uv_magic_uv/op/texture_wrap.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/transfer_uv.py b/uv_magic_uv/op/transfer_uv.py index fd1b45e46..132f395ed 100644 --- a/uv_magic_uv/op/transfer_uv.py +++ b/uv_magic_uv/op/transfer_uv.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>, Mifth, MaxRobinot" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from collections import OrderedDict diff --git a/uv_magic_uv/op/unwrap_constraint.py b/uv_magic_uv/op/unwrap_constraint.py index 311b2c35d..e98879b76 100644 --- a/uv_magic_uv/op/unwrap_constraint.py +++ b/uv_magic_uv/op/unwrap_constraint.py @@ -18,8 +18,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/uv_bounding_box.py b/uv_magic_uv/op/uv_bounding_box.py index 04aa61106..9ebc76c47 100644 --- a/uv_magic_uv/op/uv_bounding_box.py +++ b/uv_magic_uv/op/uv_bounding_box.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from enum import IntEnum import math @@ -693,6 +693,13 @@ class MUV_UVBBUpdater(bpy.types.Operator): if props.running is False: self.__handle_remove(context) return {'FINISHED'} + + area, _, _ = common.get_space('VIEW_3D', 'WINDOW', 'VIEW_3D') + + if event.mouse_region_x < 0 or event.mouse_region_x > area.width or \ + event.mouse_region_y < 0 or event.mouse_region_y > area.height: + return {'PASS_THROUGH'} + if event.type == 'TIMER': trans_mat = self.__cmd_exec.execute() self.__update_uvs(context, props.uv_info_ini, trans_mat) @@ -701,7 +708,7 @@ class MUV_UVBBUpdater(bpy.types.Operator): self.__state_mgr.update(context, props.ctrl_points, event) - return {'PASS_THROUGH'} + return {'RUNNING_MODAL'} def execute(self, context): props = context.scene.muv_props.uvbb diff --git a/uv_magic_uv/op/uv_inspection.py b/uv_magic_uv/op/uv_inspection.py index 0e8778f33..60a754a30 100644 --- a/uv_magic_uv/op/uv_inspection.py +++ b/uv_magic_uv/op/uv_inspection.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy import bmesh diff --git a/uv_magic_uv/op/uv_sculpt.py b/uv_magic_uv/op/uv_sculpt.py index 6133b2a2c..2bf76abd5 100644 --- a/uv_magic_uv/op/uv_sculpt.py +++ b/uv_magic_uv/op/uv_sculpt.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from math import pi, cos, tan, sin @@ -316,6 +316,11 @@ class MUV_UVSculptOps(bpy.types.Operator): return {'FINISHED'} self.current_mco = Vector((event.mouse_region_x, event.mouse_region_y)) + area, _, _ = common.get_space('VIEW_3D', 'WINDOW', 'VIEW_3D') + + if self.current_mco.x < 0 or self.current_mco.x > area.width or \ + self.current_mco.y < 0 or self.current_mco.y > area.height: + return {'PASS_THROUGH'} if event.type == 'LEFTMOUSE': if event.value == 'PRESS': @@ -333,7 +338,7 @@ class MUV_UVSculptOps(bpy.types.Operator): if self.__stroking: self.__stroke_apply(context, event) - return {'PASS_THROUGH'} + return {'RUNNING_MODAL'} def invoke(self, context, _): props = context.scene.muv_props.uvsculpt diff --git a/uv_magic_uv/op/uvw.py b/uv_magic_uv/op/uvw.py index 37d88a534..102026776 100644 --- a/uv_magic_uv/op/uvw.py +++ b/uv_magic_uv/op/uvw.py @@ -20,8 +20,8 @@ __author__ = "Alexander Milovsky, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from math import sin, cos, pi diff --git a/uv_magic_uv/op/world_scale_uv.py b/uv_magic_uv/op/world_scale_uv.py index f1539ddbb..e256fbac8 100644 --- a/uv_magic_uv/op/world_scale_uv.py +++ b/uv_magic_uv/op/world_scale_uv.py @@ -20,8 +20,8 @@ __author__ = "McBuff, Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from math import sqrt diff --git a/uv_magic_uv/preferences.py b/uv_magic_uv/preferences.py index eb86804e0..d8cdf86bb 100644 --- a/uv_magic_uv/preferences.py +++ b/uv_magic_uv/preferences.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" from bpy.props import ( FloatProperty, diff --git a/uv_magic_uv/properites.py b/uv_magic_uv/properites.py index f40e9f1fb..3b61fcfcd 100644 --- a/uv_magic_uv/properites.py +++ b/uv_magic_uv/properites.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy from bpy.props import ( @@ -641,6 +641,13 @@ def init_props(scene): ] ) + # UV Cursor Location + scene.muv_uvcloc_enabled = BoolProperty( + name="UV Cursor Location Enabled", + description="UV Cursor Location is enabled", + default=False + ) + def clear_props(scene): del scene.muv_props @@ -753,3 +760,6 @@ def clear_props(scene): del scene.muv_auvc_enabled del scene.muv_auvc_cursor_loc del scene.muv_auvc_align_menu + + # UV Cursor Location + del scene.muv_uvcloc_enabled diff --git a/uv_magic_uv/ui/__init__.py b/uv_magic_uv/ui/__init__.py index 00af3e062..ad56aeb3c 100644 --- a/uv_magic_uv/ui/__init__.py +++ b/uv_magic_uv/ui/__init__.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" if "bpy" in locals(): import importlib diff --git a/uv_magic_uv/ui/uvedit_copy_paste_uv.py b/uv_magic_uv/ui/uvedit_copy_paste_uv.py index 87b23fed7..d87dbef3e 100644 --- a/uv_magic_uv/ui/uvedit_copy_paste_uv.py +++ b/uv_magic_uv/ui/uvedit_copy_paste_uv.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy diff --git a/uv_magic_uv/ui/uvedit_editor_enhance.py b/uv_magic_uv/ui/uvedit_editor_enhance.py index dfe309782..88a2492c6 100644 --- a/uv_magic_uv/ui/uvedit_editor_enhance.py +++ b/uv_magic_uv/ui/uvedit_editor_enhance.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy diff --git a/uv_magic_uv/ui/uvedit_uv_manipulation.py b/uv_magic_uv/ui/uvedit_uv_manipulation.py index 2231cdf4b..f391c4cbf 100644 --- a/uv_magic_uv/ui/uvedit_uv_manipulation.py +++ b/uv_magic_uv/ui/uvedit_uv_manipulation.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy diff --git a/uv_magic_uv/ui/view3d_copy_paste_uv_editmode.py b/uv_magic_uv/ui/view3d_copy_paste_uv_editmode.py index 530b17977..a22adf035 100644 --- a/uv_magic_uv/ui/view3d_copy_paste_uv_editmode.py +++ b/uv_magic_uv/ui/view3d_copy_paste_uv_editmode.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy diff --git a/uv_magic_uv/ui/view3d_copy_paste_uv_objectmode.py b/uv_magic_uv/ui/view3d_copy_paste_uv_objectmode.py index 5aa968f27..f9e2bec0c 100644 --- a/uv_magic_uv/ui/view3d_copy_paste_uv_objectmode.py +++ b/uv_magic_uv/ui/view3d_copy_paste_uv_objectmode.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy diff --git a/uv_magic_uv/ui/view3d_uv_manipulation.py b/uv_magic_uv/ui/view3d_uv_manipulation.py index 76e0d3aac..1e9b7d7e8 100644 --- a/uv_magic_uv/ui/view3d_uv_manipulation.py +++ b/uv_magic_uv/ui/view3d_uv_manipulation.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy diff --git a/uv_magic_uv/ui/view3d_uv_mapping.py b/uv_magic_uv/ui/view3d_uv_mapping.py index 77c60c9ee..2dc241c0d 100644 --- a/uv_magic_uv/ui/view3d_uv_mapping.py +++ b/uv_magic_uv/ui/view3d_uv_mapping.py @@ -20,8 +20,8 @@ __author__ = "Nutti <nutti.metro@gmail.com>" __status__ = "production" -__version__ = "5.0" -__date__ = "16 Feb 2018" +__version__ = "5.1" +__date__ = "24 Feb 2018" import bpy -- GitLab