diff --git a/add_mesh_gears.py b/add_mesh_gears.py index c37ec80af98b4cea06a8398e4cf174990cbf18d1..eeb763b0a174ee99ca80db19889e1c08f9d9fba9 100644 --- a/add_mesh_gears.py +++ b/add_mesh_gears.py @@ -44,8 +44,7 @@ Also, the vertex group API is changed a little bit but the concepts are the same: ========= vertexgroup = ob.vertex_groups.new('NAME_OF_VERTEXGROUP') -for i in vertexgroup_vertex_indices: - ob.vertex_groups.assign_vertex(i, vertexgroup, weight, 'ADD') +ob.vertex_groups.assign(vertexgroup_vertex_indices, vertexgroup, weight, 'ADD') ========= Now for some reason the name does not 'stick' and we have to set it this way: @@ -788,12 +787,10 @@ class AddGear(bpy.types.Operator): # Create vertex groups from stored vertices. tipGroup = obj.vertex_groups.new('Tips') - for vert in verts_tip: - obj.vertex_groups.assign(vert, tipGroup, 1.0, 'ADD') + obj.vertex_groups.assign(verts_tip, tipGroup, 1.0, 'ADD') valleyGroup = obj.vertex_groups.new('Valleys') - for vert in verts_valley: - obj.vertex_groups.assign(vert, valleyGroup, 1.0, 'ADD') + obj.vertex_groups.assign(verts_valley, valleyGroup, 1.0, 'ADD') return {'FINISHED'} @@ -896,12 +893,10 @@ class AddWormGear(bpy.types.Operator): # Create vertex groups from stored vertices. tipGroup = obj.vertex_groups.new('Tips') - for vert in verts_tip: - obj.vertex_groups.assign(vert, tipGroup, 1.0, 'ADD') + obj.vertex_groups.assign(verts_tip, tipGroup, 1.0, 'ADD') valleyGroup = obj.vertex_groups.new('Valleys') - for vert in verts_valley: - obj.vertex_groups.assign(vert, valleyGroup, 1.0, 'ADD') + obj.vertex_groups.assign(verts_valley, valleyGroup, 1.0, 'ADD') return {'FINISHED'} diff --git a/io_import_scene_mhx.py b/io_import_scene_mhx.py index 00df0c8e5d8fa95c2c82ec1aacd8afa7b8e688ad..9f375a18327708d7374c25caecedd746bc92eaac 100644 --- a/io_import_scene_mhx.py +++ b/io_import_scene_mhx.py @@ -1266,9 +1266,7 @@ def parseVertexGroup(ob, me, args, tokens): group = ob.vertex_groups.new(grpName) group.name = grpName loadedData['VertexGroup'][grpName] = group - for (key, val, sub) in tokens: - if key == 'wv': - ob.vertex_groups.assign(int(val[0]), group, float(val[1]), 'REPLACE') + ob.vertex_groups.assign([int(val[0]) for (key, val, sub) in tokens if key == 'wv'], group, float(val[1]), 'REPLACE') return