[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3941] contrib/py/scripts/addons/ oscurart_tools.py: Improves in resym

Eugenio Pignataro info at oscurart.com.ar
Fri Nov 9 15:05:24 CET 2012


Revision: 3941
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3941
Author:   oscurart
Date:     2012-11-09 14:05:23 +0000 (Fri, 09 Nov 2012)
Log Message:
-----------
Improves in resym

Modified Paths:
--------------
    contrib/py/scripts/addons/oscurart_tools.py

Modified: contrib/py/scripts/addons/oscurart_tools.py
===================================================================
--- contrib/py/scripts/addons/oscurart_tools.py	2012-11-09 10:09:00 UTC (rev 3940)
+++ contrib/py/scripts/addons/oscurart_tools.py	2012-11-09 14:05:23 UTC (rev 3941)
@@ -2199,7 +2199,7 @@
     XML.close()
     SYMAP.clear()
 
-def reSymMesh (self, SELECTED):
+def reSymMesh (self, SELECTED, SIDE):
     
     bpy.ops.object.mode_set(mode='EDIT')
     
@@ -2217,9 +2217,20 @@
     
     SYMAP = eval(XML.readlines()[0])    
     
-    if SELECTED:
-        for VERT in SYMAP:
-            if BM.verts[SYMAP[VERT]].select:
+    if SIDE == "+-":
+        if SELECTED:
+            for VERT in SYMAP:
+                if BM.verts[SYMAP[VERT]].select:
+                    if VERT == SYMAP[VERT]:
+                        BM.verts[VERT].co[0] = 0
+                        BM.verts[VERT].co[1] = BM.verts[SYMAP[VERT]].co[1]
+                        BM.verts[VERT].co[2] = BM.verts[SYMAP[VERT]].co[2]            
+                    else:    
+                        BM.verts[VERT].co[0] = -BM.verts[SYMAP[VERT]].co[0]
+                        BM.verts[VERT].co[1] = BM.verts[SYMAP[VERT]].co[1]
+                        BM.verts[VERT].co[2] = BM.verts[SYMAP[VERT]].co[2]        
+        else:    
+            for VERT in SYMAP:
                 if VERT == SYMAP[VERT]:
                     BM.verts[VERT].co[0] = 0
                     BM.verts[VERT].co[1] = BM.verts[SYMAP[VERT]].co[1]
@@ -2227,17 +2238,29 @@
                 else:    
                     BM.verts[VERT].co[0] = -BM.verts[SYMAP[VERT]].co[0]
                     BM.verts[VERT].co[1] = BM.verts[SYMAP[VERT]].co[1]
-                    BM.verts[VERT].co[2] = BM.verts[SYMAP[VERT]].co[2]        
-    else:    
-        for VERT in SYMAP:
-            if VERT == SYMAP[VERT]:
-                BM.verts[VERT].co[0] = 0
-                BM.verts[VERT].co[1] = BM.verts[SYMAP[VERT]].co[1]
-                BM.verts[VERT].co[2] = BM.verts[SYMAP[VERT]].co[2]            
-            else:    
-                BM.verts[VERT].co[0] = -BM.verts[SYMAP[VERT]].co[0]
-                BM.verts[VERT].co[1] = BM.verts[SYMAP[VERT]].co[1]
-                BM.verts[VERT].co[2] = BM.verts[SYMAP[VERT]].co[2]
+                    BM.verts[VERT].co[2] = BM.verts[SYMAP[VERT]].co[2]
+    else:
+        if SELECTED:
+            for VERT in SYMAP:
+                if BM.verts[SYMAP[VERT]].select:
+                    if VERT == SYMAP[VERT]:
+                        BM.verts[SYMAP[VERT]].co[0] = 0
+                        BM.verts[SYMAP[VERT]].co[1] = BM.verts[VERT].co[1]
+                        BM.verts[SYMAP[VERT]].co[2] = BM.verts[VERT].co[2]            
+                    else:    
+                        BM.verts[SYMAP[VERT]].co[0] = -BM.verts[VERT].co[0]
+                        BM.verts[SYMAP[VERT]].co[1] = BM.verts[VERT].co[1]
+                        BM.verts[SYMAP[VERT]].co[2] = BM.verts[VERT].co[2]        
+        else:    
+            for VERT in SYMAP:
+                if VERT == SYMAP[VERT]:
+                    BM.verts[SYMAP[VERT]].co[0] = 0
+                    BM.verts[SYMAP[VERT]].co[1] = BM.verts[VERT].co[1]
+                    BM.verts[SYMAP[VERT]].co[2] = BM.verts[VERT].co[2]            
+                else:    
+                    BM.verts[SYMAP[VERT]].co[0] = -BM.verts[VERT].co[0]
+                    BM.verts[SYMAP[VERT]].co[1] = BM.verts[VERT].co[1]
+                    BM.verts[SYMAP[VERT]].co[2] = BM.verts[VERT].co[2]                        
     
     bpy.ops.object.mode_set(mode='OBJECT')
     bpy.ops.object.mode_set(mode='EDIT')
@@ -2263,8 +2286,16 @@
 
     selected=bpy.props.BoolProperty(default=False, name="Only Selected")
     
+    side = bpy.props.EnumProperty(
+            name="Side_",
+            description="Select Side.",
+            items=(('+-', "+X to -X", "+X to -X"),
+                   ('-+', "-X to +X", "-X to +X")),
+            default='+-',
+            )    
+    
     def execute (self, context):
-        reSymMesh(self, self.selected)
+        reSymMesh(self, self.selected,self.side)
         return {'FINISHED'}
     
 ##=============== DISTRIBUTE ======================    



More information about the Bf-extensions-cvs mailing list