[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [4492] contrib/py/scripts/addons/ oscurart_tools: Optimize Code.
Eugenio Pignataro
info at oscurart.com.ar
Sun Apr 28 17:05:58 CEST 2013
Revision: 4492
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=4492
Author: oscurart
Date: 2013-04-28 15:05:58 +0000 (Sun, 28 Apr 2013)
Log Message:
-----------
Optimize Code.
Modified Paths:
--------------
contrib/py/scripts/addons/oscurart_tools/oscurart_meshes.py
contrib/py/scripts/addons/oscurart_tools/oscurart_overrides.py
Modified: contrib/py/scripts/addons/oscurart_tools/oscurart_meshes.py
===================================================================
--- contrib/py/scripts/addons/oscurart_tools/oscurart_meshes.py 2013-04-26 16:08:19 UTC (rev 4491)
+++ contrib/py/scripts/addons/oscurart_tools/oscurart_meshes.py 2013-04-28 15:05:58 UTC (rev 4492)
@@ -106,12 +106,9 @@
BM = bmesh.from_edit_mesh(bpy.context.object.data)
bpy.ops.mesh.select_all(action='DESELECT')
bpy.ops.object.vertex_group_select()
- SELVER=[VERT.index for VERT in BM.verts[:] if VERT.select]
+ SELVER=[VERT.index for VERT in BM.verts[:] if VERT.select]
- if sys.platform.startswith("w"):
- SYSBAR = "\\"
- else:
- SYSBAR = "/"
+ SYSBAR = os.sep
FILEPATH=bpy.data.filepath
ACTIVEFOLDER=FILEPATH.rpartition(SYSBAR)[0]
@@ -125,19 +122,16 @@
bpy.ops.object.vertex_group_assign(new=False)
bpy.ops.object.mode_set(mode='WEIGHT_PAINT')
for VERT in INL:
- print(VERT)
- i = 0
- for GRA in OBACTIVO.data.vertices[SYMAP[VERT]].groups[:]:
+ for i, GRA in enumerate(OBACTIVO.data.vertices[SYMAP[VERT]].groups[:]):
if GRA.group == VGACTIVO:
print (i)
EM = i
- i+=1
- a = 0
- for GRA in OBACTIVO.data.vertices[VERT].groups[:]:
+
+ for a, GRA in enumerate(OBACTIVO.data.vertices[VERT].groups[:]):
if GRA.group == VGACTIVO:
print (a)
REC = a
- a+=1
+
OBACTIVO.data.vertices[VERT].groups[REC].weight = OBACTIVO.data.vertices[SYMAP[VERT]].groups[EM].weight
XML.close()
@@ -155,60 +149,38 @@
bl_label = "Export Groups"
bl_options = {"REGISTER", "UNDO"}
def execute(self,context):
-
+
OBSEL=bpy.context.active_object
-
- if os.sys.platform.count("win"):
- print("WINDOWS")
- BAR = "\\"
- else:
- print("LINUX")
- BAR = "/"
-
FILEPATH = bpy.data.filepath
- FILE = open(FILEPATH.rpartition(BAR)[0] + BAR+OBSEL.name + ".xml", mode = "w")
- VERTLIST = []
+
+ with open(os.path.join(os.path.split(FILEPATH)[0],"%s.xml" % (OBSEL.name)), mode = "w") as FILE:
+ VERTLIST = []
+ LENVER = len(OBSEL.data.vertices)
+ for VG in OBSEL.vertex_groups:
+ BONELIST = []
+ for VERTICE in range(0,LENVER):
+ try:
+ BONELIST.append((VERTICE,VG.weight(VERTICE),VG.name,))
+ except:
+ pass
+ VERTLIST.append(BONELIST)
+ NAMEGROUPLIST=[]
+ for VG in OBSEL.vertex_groups:
+ NAMEGROUPLIST.append(VG.name)
+ VERTLIST.append(NAMEGROUPLIST)
+ FILE.write(str(VERTLIST))
- LENVER = len(OBSEL.data.vertices)
+ with open(os.path.join(os.path.split(FILEPATH)[0],"%s_DATA.xml" % (OBSEL.name)), mode = "w") as FILE:
+ DATAVER = []
+ for VERT in OBSEL.data.vertices[:]:
+ LISTVGTEMP = []
+ for VGTEMP, GROUP in enumerate(VERT.groups[:]):
+ LISTVGTEMP.append((GROUP.group,VGTEMP))
+ LISTVGTEMP=sorted(LISTVGTEMP)
+ for TEMP, GROUP in enumerate(VERT.groups[:]):
+ DATAVER.append((VERT.index,TEMP,VERT.groups[LISTVGTEMP[TEMP][1]].weight))
+ FILE.write(str(DATAVER))
- for VG in OBSEL.vertex_groups:
- BONELIST = []
- for VERTICE in range(0,LENVER):
- try:
- BONELIST.append((VERTICE,VG.weight(VERTICE),VG.name,))
- except:
- pass
- VERTLIST.append(BONELIST)
- NAMEGROUPLIST=[]
- for VG in OBSEL.vertex_groups:
- NAMEGROUPLIST.append(VG.name)
- VERTLIST.append(NAMEGROUPLIST)
- FILE.writelines(str(VERTLIST))
- FILE.close()
-
-
- FILEPATH = bpy.data.filepath
- FILE = open(FILEPATH.rpartition(BAR)[0] + BAR + OBSEL.name + "_DATA.xml", mode = "w")
-
- DATAVER = []
-
- for VERT in OBSEL.data.vertices[:]:
- TEMP = 0
- VGTEMP = 0
- LISTVGTEMP = []
-
- for GROUP in VERT.groups[:]:
- LISTVGTEMP.append((GROUP.group,VGTEMP))
- VGTEMP += 1
-
- LISTVGTEMP=sorted(LISTVGTEMP)
- for GROUP in VERT.groups[:]:
- DATAVER.append((VERT.index,TEMP,VERT.groups[LISTVGTEMP[TEMP][1]].weight))
- TEMP += 1
-
- FILE.writelines(str(DATAVER))
- FILE.close()
-
return {'FINISHED'}
class OscImportVG (bpy.types.Operator):
Modified: contrib/py/scripts/addons/oscurart_tools/oscurart_overrides.py
===================================================================
--- contrib/py/scripts/addons/oscurart_tools/oscurart_overrides.py 2013-04-26 16:08:19 UTC (rev 4491)
+++ contrib/py/scripts/addons/oscurart_tools/oscurart_overrides.py 2013-04-28 15:05:58 UTC (rev 4492)
@@ -55,10 +55,9 @@
# RESTAURO MATERIALES DE OVERRIDES
for OBJ in LISTMAT:
if OBJ.type == "MESH" or OBJ.type == "META" or OBJ.type == "CURVE":
- SLOTIND = 0
- for SLOT in LISTMAT[OBJ]:
+ for SLOTIND, SLOT in enumerate(LISTMAT[OBJ]):
OBJ.material_slots[SLOTIND].material = SLOT
- SLOTIND += 1
+
## HAND OPERATOR
@@ -180,8 +179,8 @@
colrow.operator("render.overrides_add_slot", icon = "ZOOMIN")
colrow.operator("render.overrides_remove_slot", icon = "ZOOMOUT")
col.operator("render.overrides_transfer", icon = "SHORTDISPLAY")
- i = 0
- for m in bpy.context.scene.ovlist:
+
+ for i, m in enumerate(bpy.context.scene.ovlist):
colrow = col.row(align=1)
colrow.prop_search(m, "grooverride", bpy.data, "groups", text= "")
colrow.prop_search(m, "matoverride", bpy.data, "materials", text= "")
@@ -193,7 +192,7 @@
p.index = i
pb = colrow.operator("ovlist.kill", text="", icon="X")
pb.index = i
- i+=1
+
class OscOverridesUp (bpy.types.Operator):
bl_idname = 'ovlist.move_up'
More information about the Bf-extensions-cvs
mailing list