1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
| from maya import cmds
def createGear(teeth = 10, length = 0.3): print("Creating Gear", teeth,length) spans = teeth * 2 transform,constructor = cmds.polyPipe(subdivisionsAxis = spans) sideFaces = range(spans*2,spans*3,2) cmds.select(clear = True) for face in sideFaces: cmds.select('{}.f[{}]'.format(transform, face), add = True) extrude = cmds.polyExtrudeFacet(localTranslateZ = length)[0] return transform, constructor, extrude
def changeTeeth(constructor,extrude,teeth = 10, length = 0.3): spans = teeth * 2 cmds.polyPipe(constructor, edit = True, subdivisionsAxis = spans) sideFaces = range(spans*2,spans*3,2) faceNames = [] for face in sideFaces: faceName = 'f[{}]'.format(face) faceNames.append(faceName) cmds.setAttr('{}.inputComponents'.format(extrude),len(faceNames),*faceNames,type = "componentList") cmds.polyExtrudeFacet(extrude, edit = True, ltz = length)
changeTeeth(constructor,extrude,teeth = 40)
|