[Bf-extensions-cvs] [8514093] master: mesh edit tools: clean up vert align part1

meta-androcto noreply at git.blender.org
Wed Apr 5 10:23:53 CEST 2017


Commit: 8514093bd5ee85c498b4bbd8ef8c4e4d7434e972
Author: meta-androcto
Date:   Wed Apr 5 18:23:12 2017 +1000
Branches: master
https://developer.blender.org/rBA8514093bd5ee85c498b4bbd8ef8c4e4d7434e972

mesh edit tools: clean up vert align part1

===================================================================

M	mesh_extra_tools/__init__.py
M	mesh_extra_tools/vertex_align.py

===================================================================

diff --git a/mesh_extra_tools/__init__.py b/mesh_extra_tools/__init__.py
index 0aa86b3..096206e 100644
--- a/mesh_extra_tools/__init__.py
+++ b/mesh_extra_tools/__init__.py
@@ -33,7 +33,7 @@ bl_info = {
     "tracker_url": "https://developer.blender.org/maniphest/task/edit/form/2/",
     "category": "Mesh"}
 
-# NOTE: Temporarly disable Vertex align since is broken
+
 # Import From Files
 if "bpy" in locals():
     import importlib
@@ -64,7 +64,7 @@ if "bpy" in locals():
     importlib.reload(mesh_info_select)
     importlib.reload(mesh_extrude_and_reshape)
     importlib.reload(mesh_check)
-    # importlib.reload(vertex_align)
+    importlib.reload(vertex_align)
 
 else:
     from . import face_inset_fillet
@@ -86,7 +86,7 @@ else:
     from . import mesh_help
     from . import mesh_extrude_and_reshape
     from . import mesh_check
-    # from . import vertex_align
+    from . import vertex_align
 
     from .mesh_select_tools import mesh_select_by_direction
     from .mesh_select_tools import mesh_select_by_edge_length
@@ -101,6 +101,7 @@ else:
 
 import bpy
 import bmesh
+from bpy.props import EnumProperty
 from bpy.types import (
         Menu,
         Panel,
@@ -239,35 +240,22 @@ class EditToolsPanel(Panel):
             row.operator("mesh.random_vertices", text="Random Vertices")
             row.operator("mesh.extra_tools_help",
                         icon="LAYER_USED").help_ids = "random_vertices"
-
-            # temporarly disable vertex_align since it is borked
-            """
-            cen0 = context.scene.va_custom_props.en0
+        # Vertex Align Properties And Menu
+            cen0 = context.scene.va_custom_props.en0 # get the properties list
             layout = self.layout
-
             layout.label(text="Vertex Align:", icon="VERTEXSEL")
-            layout.prop(context.scene.va_custom_props, 'en0', expand = False)
-
-            if cen0 == 'opt0':
+            layout.prop(context.scene.va_custom_props, 'en0', expand = False) # Draw the menu with 2 options 
+            if cen0 == 'vertex': 
                 row = layout.split(0.60)
                 row.label('Store data:')
-                row.operator('va.op0_id', text = 'Vertex')
+                row.operator('va.op0_store_id', text = 'Vertex')
                 row1 = layout.split(0.8, align=True)
-                row1.operator('va.op2_id', text = 'Align')
-                row1.operator('va.op7_id', text = '', icon = "LAYER_USED")
-            elif cen0 == 'opt1':
-                layout.operator('va.op3_id', text = 'Align')
-            elif cen0 == 'opt2':
-                row = layout.split(0.40)
-                row.label('Store data:')
-                row.operator('va.op0_id', text = 'Two vertices')
-                layout.operator('va.op5_id', text = 'Align')
-            elif cen0 == 'opt3':
-                row = layout.split(0.60)
-                row.label('Store data:')
-                row.operator('va.op1_id', text = 'Face')
-                layout.operator('va.op6_id', text = 'Align')
-            """
+                row1.operator('va.op2_align_id', text = 'Align to Axis')
+                row1.operator('va.op7_help_id', text = '', icon = "LAYER_USED")
+            elif cen0 == 'coordinates':
+                layout.operator('va.op3_coord_list_id', text = 'Align Coordinates')
+
+
         # Edge options
         box1 = self.layout.box()
         col = box1.column(align=True)
@@ -399,26 +387,25 @@ class EditToolsPanel(Panel):
             icons = load_icons()
             tris = icons.get("triangles")
             ngons = icons.get("ngons")
-
+            
+         
             mesh_check = context.window_manager.mesh_check
-
+         
             layout.prop(mesh_check, "mesh_check_use")
-
+         
             if mesh_check.mesh_check_use:
                 layout = self.layout
 
                 row = layout.row()
-                row.operator("object.face_type_select", text="Tris",
-                            icon_value=tris.icon_id).face_type = 'tris'
-                row.operator("object.face_type_select", text="Ngons",
-                            icon_value=ngons.icon_id).face_type = 'ngons'
+                row.operator("object.face_type_select", text="Tris", icon_value=tris.icon_id).face_type = 'tris'
+                row.operator("object.face_type_select", text="Ngons",icon_value=ngons.icon_id).face_type = 'ngons'
                 row = layout.row()
                 row.prop(mesh_check, "display_faces", text="Display Faces")
                 if mesh_check.display_faces:
                     row = layout.row()
                     row.prop(mesh_check, "edge_width")
                     row = layout.row()
-                    row.prop(mesh_check, "custom_tri_color", text="Tris color")
+                    row.prop(mesh_check, "custom_tri_color",text="Tris color" ) 
                     row = layout.row()
                     row.prop(mesh_check, "custom_ngons_color")
                     row = layout.row()
@@ -814,7 +801,7 @@ def register():
     vfe_specials.register()
     mesh_extrude_and_reshape.register()
     mesh_check.register()
-    # vertex_align.register()
+    vertex_align.register()
     bpy.utils.register_module(__name__)
 
     # Register Scene Properties
@@ -839,7 +826,7 @@ def unregister():
     vfe_specials.unregister()
     mesh_extrude_and_reshape.unregister()
     mesh_check.unregister()
-    # vertex_align.unregister()
+    vertex_align.unregister()
 
     del bpy.types.Scene.mesh_extra_tools
     del bpy.types.Object.tkkey
diff --git a/mesh_extra_tools/vertex_align.py b/mesh_extra_tools/vertex_align.py
index 04401ae..d0c17e9 100644
--- a/mesh_extra_tools/vertex_align.py
+++ b/mesh_extra_tools/vertex_align.py
@@ -34,9 +34,21 @@ bl_info = {
 
 # ------ ------
 import bpy
-from bpy.props import PointerProperty, EnumProperty, FloatProperty, BoolProperty
+from bpy.props import (
+        BoolProperty,
+        EnumProperty,
+        PointerProperty,
+        FloatProperty,
+        )
+
 from mathutils import Vector
-from mathutils.geometry import intersect_point_line, intersect_line_plane
+from mathutils.geometry import (
+        intersect_point_line,
+        intersect_line_plane,
+        )
+from bpy.types import (
+        PropertyGroup,
+        )
 
 # ------ Edit Mode Toggle------
 def edit_mode_out():
@@ -49,22 +61,22 @@ def edit_mode_in():
 def get_mesh_data_():
     edit_mode_out()
     ob_act = bpy.context.active_object
-    me = ob_act.data    
+    me = ob_act.data
     edit_mode_in()
-    return me    
-    
+    return me
+
 def list_clear_(l):
     l[:] = []
     return l
 
 # -- -- Prpoerty Group-- --
-class va_p_group0(bpy.types.PropertyGroup):
+class va_property_group(PropertyGroup):
+
+    en0 = EnumProperty( items =( ('vertex', 'Original vertex', ''),
+                                 ('coordinates', 'Custom coordinates', '')),
 
-    en0 = EnumProperty( items =( ('opt0', 'Original vertex', ''),
-                                 ('opt1', 'Custom coordinates', '')),
-                                  ## REMOVED BROKEN ('opt2', 'Line', ''), ('opt3', 'Plane', '')),
                         name = 'Align to',
-                        default = 'opt0' )
+                        default = 'vertex' )
 
     en1 = EnumProperty( items =( ('en1_opt0', 'x', ''),
                                  ('en1_opt1', 'y', ''),
@@ -78,9 +90,9 @@ class va_buf():
     list_f = []
     list_0 = []
 
-# ------ operator 0 ------
-class va_op0(bpy.types.Operator):
-    bl_idname = 'va.op0_id'
+# ------ operator 0 Store The Vert------
+class va_op0_store(bpy.types.Operator):
+    bl_idname = 'va.op0_store_id'
     bl_label = ''
     bl_description = "Store single vert as align point"
 
@@ -93,8 +105,8 @@ class va_op0(bpy.types.Operator):
                 bpy.ops.mesh.select_all(action = 'DESELECT')
         return {'FINISHED'}
 
-# ------ operator 1 ------
-class va_op1(bpy.types.Operator):
+# ------ operator 1 Append to list------
+class va_op1_list(bpy.types.Operator):
     bl_idname = 'va.op1_id'
     bl_label = ''
     bl_description = "test2"
@@ -109,8 +121,8 @@ class va_op1(bpy.types.Operator):
         return {'FINISHED'}
 
 # ------ operator 2 ------ align to original
-class va_op2(bpy.types.Operator):
-    bl_idname = 'va.op2_id'
+class va_op2_align(bpy.types.Operator):
+    bl_idname = 'va.op2_align_id'
     bl_label = 'Align to original'
     bl_options = {'REGISTER', 'UNDO'}
     bl_description = "Align selection to stored single vert"
@@ -154,10 +166,10 @@ class va_op2(bpy.types.Operator):
                         me.vertices[i].co = Vector(( v[0], v[1], vo[2] ))
         edit_mode_in()
         return {'FINISHED'}
-    
+
 # ------ operator 3 ------ align to custom coordinates
-class va_op3(bpy.types.Operator):
-    bl_idname = 'va.op3_id'
+class va_op3_coord_list(bpy.types.Operator):
+    bl_idname = 'va.op3_coord_list_id'
     bl_label = ''
     bl_description = "Align to custom coordinates"
 
@@ -176,14 +188,19 @@ class va_op3(bpy.types.Operator):
         edit_mode_in()
         return {'FINISHED'}
 
-# ------ operator 4 ------ align to custom coordinates
-class va_op4(bpy.types.Operator):
+# ------ operator 4 ------ align to custom coordinates menu
+class va_op4_coord_menu(bpy.types.Operator):
     bl_idname = 'va.op4_id'
     bl_label = 'Align to custom coordinates'
     bl_options = {'REGISTER', 'UNDO'}
     bl_description = "Align to custom coordinates2"
-    
-    x = y = z = FloatProperty( name = '', default = 0.0, min = -100.0, max = 100.0, step = 1, precision = 3 )
+
+    x = y = z = FloatProperty( name = '',
+                               default = 0.0,
+                               min = -100.0,
+                               max = 100.0,
+                               step = 1,
+                               precision = 3 )
     b_x = b_y = b_z = BoolProperty()
 
     def draw(self, context):
@@ -197,7 +214,7 @@ class va_op4(bpy.types.Operator):
         row = layout.split(0.25)
         row.prop(self, 'b_z', text = 'z')
         row.prop(self, 'z')
-    
+
     def invoke(self, context, event):
         return context.window_manager.invoke_props_dialog(self, width = 200)
 
@@ -205,7 +222,

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-extensions-cvs mailing list