Skip to content

Instantly share code, notes, and snippets.

@p2or
Created August 25, 2017 10:15
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save p2or/3cef094738c1669970fb04ccd77e944c to your computer and use it in GitHub Desktop.
Save p2or/3cef094738c1669970fb04ccd77e944c to your computer and use it in GitHub Desktop.
Merge-VertexGroups (jerryno) #Blender
import bpy
vgroup_A_name = "Group"
vgroup_B_name = "Group.001"
ob = bpy.context.active_object
if vgroup_A_name and vgroup_B_name in ob.vertex_groups:
vgroup = ob.vertex_groups.new(name=vgroup_A_name+"+"+vgroup_B_name)
for id, vert in enumerate(ob.data.vertices):
available_groups = [v_group_elem.group for v_group_elem in vert.groups]
A = B = 0
if ob.vertex_groups[vgroup_A_name].index in available_groups:
A = ob.vertex_groups[vgroup_A_name].weight(id)
if ob.vertex_groups[vgroup_B_name].index in available_groups:
B = ob.vertex_groups[vgroup_B_name].weight(id)
if len(vert.groups):
for g in vert.groups:
if ob.vertex_groups[g.group].name in [vgroup_A_name, vgroup_B_name]:
vgroup.add([id], A+B ,'REPLACE')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment