Maya | Python | Spawn polysphere on each vertex of a mesh
- Max Liu
- May 14, 2020
- 1 min read
Updated: Dec 24, 2024

import pymel.core as pm
geo = pm.selected()
pm.makeIdentity(geo, apply=True, t=1,r=1,s=1,n=0,pn=1)
allVertexes = pm.ls('{}.vtx[*]'.format(geo[0]),fl=True)
allVertexesPos = []
for eachPos in allVertexes:
allVertexesPos.append(eachPos.getPosition())
i = 0
whileLoop = len(allVertexes)
print(whileLoop)
while i < whileLoop:
newSphere = pm.ls(pm.polySphere(sx=10, sy=8, r=2), long = True)
vertexTranslate = allVertexesPos[i]
vertexTranslateX = vertexTranslate[0]
vertexTranslateY = vertexTranslate[1]
vertexTranslateZ = vertexTranslate[2]
pm.setAttr(newSphere[0] + '.translateX', vertexTranslateX)
pm.setAttr(newSphere[0] + '.translateY', vertexTranslateY)
pm.setAttr(newSphere[0] + '.translateZ', vertexTranslateZ)
i = i + 1
Comments