Skip to content

Instantly share code, notes, and snippets.

@gabosalinas
Created September 19, 2017 03:56
Show Gist options
  • Save gabosalinas/efcbd9b01dd26dc46a1759d2ffa32789 to your computer and use it in GitHub Desktop.
Save gabosalinas/efcbd9b01dd26dc46a1759d2ffa32789 to your computer and use it in GitHub Desktop.
vertices to joints
import maya.cmds as cmds
def verts2jnts():
vertS = cmds.filterExpand(sm=31)
cmds.select(clear=1)
jnts=[]
for vert in vertS:
jntCreado = cmds.joint( n = (vert+'JNT') )
convVert = cmds.polyListComponentConversion( vert, toUV=True )
coorU = cmds.polyEditUV( convVert, query=True )[0]
coorV = cmds.polyEditUV( convVert, query=True )[1]
shapeMesh = cmds.ls(vert, o=True)[0]
objV = cmds.listRelatives(shapeMesh, p=True)[0]
if ':' in objV:
objV = objV.split(":")[-1]
objVU0 = "."+objV+"U0"
objVV0 = "."+objV+"V0"
constraintVert = cmds.pointOnPolyConstraint (vert,jntCreado)
cmds.setAttr (constraintVert[0]+objVU0,coorU)
cmds.setAttr (constraintVert[0]+objVV0,coorV)
cmds.select(clear=1)
cmds.delete ( constraintVert )
jnts.append(jntCreado)
return jnts[::-1]
if cmds.ls(sl=1):
verts2jnts()
else:
cmds.warning ( 'No selection' )
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment