[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3007] contrib/py/scripts/addons/ oscurart_tools.py: Bugfix and improves for "SelectSide" op.

Eugenio Pignataro info at oscurart.com.ar
Tue Feb 21 14:12:49 CET 2012


Revision: 3007
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3007
Author:   oscurart
Date:     2012-02-21 13:12:43 +0000 (Tue, 21 Feb 2012)
Log Message:
-----------
Bugfix and improves for "SelectSide" op.

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-02-21 12:12:28 UTC (rev 3006)
+++ contrib/py/scripts/addons/oscurart_tools.py	2012-02-21 13:12:43 UTC (rev 3007)
@@ -331,15 +331,17 @@
         return{"FINISHED"}     
         
 ## -----------------------------------SELECT LEFT---------------------
-def side (self, nombre): 
-            
-    ## LEVANTO EL MODO ACTUAL
-    VARMODE=0
+def side (self, nombre, offset): 
+    
+    OBJECT=bpy.context.active_object        
+
     MODE=bpy.context.mode
-    if MODE == "EDIT_MESH":
-        bpy.ops.object.mode_set(mode="OBJECT", toggle=0)
-        VARMODE=1  
 
+    bpy.ops.object.mode_set(mode="EDIT", toggle=0)
+    bpy.ops.mesh.select_all(action='DESELECT')    
+    bpy.ops.object.mode_set(mode="OBJECT", toggle=0)
+
+
     ##SETEO VERTEX MODE
     
     bpy.context.tool_settings.mesh_select_mode[0]=1
@@ -347,27 +349,20 @@
     bpy.context.tool_settings.mesh_select_mode[2]=0
     
     ## DESELECCIONA TODO
-    for object in bpy.context.selected_objects:
-        print ("LA DATA DEL OBJETO SE LLAMA:  "+str(object.data.name))
-        for vertices in bpy.data.meshes[object.data.name].vertices:
-            vertices.select = 0
+    for VERTICE in OBJECT.data.vertices[:]:
+        VERTICE.select = False
+    
     if nombre == False:
-        ## CONDICION QUE SI EL VERTICE ES MENOR A 0 LO SELECCIONA        
-        for object in bpy.context.selected_objects:
-                print (object.data.name)
-                for vertices in bpy.data.meshes[object.data.name].vertices:
-                    if vertices.co[0] < 0:
-                        print ("es menor")
-                        vertices.select = True   
+        ## CONDICION QUE SI EL VERTICE ES MENOR A 0 LO SELECCIONA  
+        for VERTICES in OBJECT.data.vertices[:]:
+            if VERTICES.co[0] < (offset):
+                VERTICES.select = 1  
     else:
         ## CONDICION QUE SI EL VERTICE ES MENOR A 0 LO SELECCIONA        
-        for object in bpy.context.selected_objects:
-                print (object.data.name)
-                for vertices in bpy.data.meshes[object.data.name].vertices:
-                    if vertices.co[0] > 0:
-                        print ("es menor")
-                        vertices.select = True                             
-    
+        for VERTICES in OBJECT.data.vertices[:]:
+            if VERTICES.co[0] > (offset):
+                VERTICES.select = 1                              
+
     bpy.ops.object.mode_set(mode="EDIT", toggle=0)    
 
 
@@ -377,10 +372,10 @@
     bl_options =  {"REGISTER","UNDO"}
     
     side = bpy.props.BoolProperty(name="Greater than zero", default=False)
-    
+    offset = bpy.props.FloatProperty(name="Offset", default=0)
     def execute(self,context):  
         
-        side(self, self.side)
+        side(self, self.side, self.offset)
                
         return{"FINISHED"}        
            
@@ -2387,4 +2382,4 @@
 bpy.utils.register_class(renderCurrent)
 bpy.utils.register_class(renderCurrentCF)
 bpy.utils.register_class(renderSelected)
-bpy.utils.register_class(renderSelectedCF)
+bpy.utils.register_class(renderSelectedCF)
\ No newline at end of file



More information about the Bf-extensions-cvs mailing list