[Bf-extensions-cvs] [32be045] master: BugFixes and Cleanup Overlap UVs

Eugenio Pignataro noreply at git.blender.org
Sun May 25 17:26:26 CEST 2014


Commit: 32be0452a371be7c7fc8a73e87540b643e7e9f04
Author: Eugenio Pignataro
Date:   Sun May 25 12:26:16 2014 -0300
https://developer.blender.org/rBAC32be0452a371be7c7fc8a73e87540b643e7e9f04

BugFixes and Cleanup Overlap UVs

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

M	oscurart_tools/oscurart_meshes.py

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

diff --git a/oscurart_tools/oscurart_meshes.py b/oscurart_tools/oscurart_meshes.py
index bdeb16f..caf5353 100644
--- a/oscurart_tools/oscurart_meshes.py
+++ b/oscurart_tools/oscurart_meshes.py
@@ -277,6 +277,8 @@ class OscObjectToMesh(bpy.types.Operator):
 
 def DefOscOverlapUv(valprecision):
     inicio= time.time()
+
+    
     mode = bpy.context.object.mode
     bpy.ops.object.mode_set(mode='OBJECT', toggle=False)
     ob = bpy.context.object
@@ -287,7 +289,7 @@ def DefOscOverlapUv(valprecision):
     polydict = {redondeo(poly.center[:]) : poly  for poly in ob.data.polygons }
     vertdict = {redondeo(vert.co[:]) : vert for vert in ob.data.vertices }
 
-    polyeq = { indice.index : polydict[absol(center)].index for center,indice in polydict.items() if center[0] <= 0
+    polyeq = { indice.index : polydict[absol(center)].index for center,indice in polydict.items() if center[0] < 0
         if polydict.get(absol(center))}
     verteq = { indice.index : vertdict[absol(co)].index for co,indice in vertdict.items() if co[0] <= 0
         if vertdict.get(absol(co))}
@@ -295,35 +297,17 @@ def DefOscOverlapUv(valprecision):
     dict = { poly.index : {ob.data.loops[vertex].vertex_index :vertex  for vertex in poly.loop_indices} for poly in ob.data.polygons}
 
     for poly,data in dict.items():
-        if ob.data.polygons[poly].center.x <= 0:
-            poly, data
-            polyeq[poly], dict[polyeq[poly]]
-            for ind in data:
-                ind, verteq[ind]
-                data[ind], dict[polyeq[poly]][verteq[ind]]
-                uvm.data[data[ind]].uv = uvm.data[dict[polyeq[poly]][verteq[ind]]].uv 
-
-    bpy.ops.object.mode_set(mode=mode, toggle=False)      
-    print("Time elapsed: %4s seconds" % (time.time()-inicio))          
-    
-    """
-    rd = 4
-    ACTOBJ = bpy.context.object
-    inicio= time.time()
-    bpy.ops.mesh.faces_mirror_uv(direction='POSITIVE', precision=valprecision)
-    bpy.ops.object.mode_set(mode='OBJECT') 
-    SELUVVERT = [ver for ver in ACTOBJ.data.uv_layers[ACTOBJ.data.uv_textures.active.name].data[:] if ver.select]
-    MAY = [ver for ver in SELUVVERT if ver.uv[0] > .5]
+        if ob.data.polygons[poly].center.x < 0 and polyeq.get(poly):
+            for   vertice, vertex in data.items():              
+                if len(dict[poly]) ==  len(dict[polyeq[poly]])  and verteq.get(vertice): # DEBUG
+                    source, target = dict[poly][vertice] , dict[polyeq[poly]][verteq[vertice]]  
+                    uvm.data[target].uv = uvm.data[source].uv
 
+    bpy.ops.object.mode_set(mode=mode, toggle=False)  
+   
+    print("Time elapsed: %4s seconds" % (time.time()-inicio))          
     
-    for vl in MAY:
-        vl.uv = (1-vl.uv[0],vl.uv[1])   
-                   
-    bpy.ops.object.mode_set(mode='EDIT')
 
-    
-    print("Time elapsed: %4s seconds" % (time.time()-inicio))
-    """
 
 class OscOverlapUv(bpy.types.Operator):
     bl_idname = "mesh.overlap_uv_faces"
@@ -421,3 +405,4 @@ class ModalIndexOperator(bpy.types.Operator):
             self.report({"WARNING"}, "Is not a 3D Space")
             return {'CANCELLED'}
                 
+



More information about the Bf-extensions-cvs mailing list