def rebuild_curves(*args):
"""
rebuilds selected curves to specs in window
"""
sel = cmds.ls(sl=True, exactType = "transform")
check = False
newCrvs = []
if sel:
for x in sel:
check = rig.isType(x, "nurbsCurve")
if check:
crv = x
parent = ""
parList = cmds.listRelatives(crv, parent = True)
if parList:
parent = parList[0]
num = calculate_pts(crv)
newCrv = cmds.rebuildCurve(crv, rebuildType = 0, spans = num, keepRange = 0, replaceOriginal=False, name = "{0}_RB".format(crv))[0]
newCrvs.append(newCrv)
if cmds.objExists("crvRebuildOriginals_GRP"):
if (parent and parent != "crvRebuildOriginals_GRP"):
cmds.parent(newCrv, parent)
if parent != "crvRebuildOriginals_GRP":
cmds.parent(crv, "crvRebuildOriginals_GRP")
cmds.setAttr("{0}.v".format(crv), 0)
else:
cmds.group(empty = True, name = "crvRebuildOriginals_GRP")
if (parent and parent != "crvRebuildOriginals_GRP"):
cmds.parent(newCrv, parent)
if parent != "crvRebuildOriginals_GRP":
cmds.parent(crv, "crvRebuildOriginals_GRP")
cmds.setAttr("{0}.v".format(crv), 0)
else:
cmds.warning("{0} is not a nurbsCurve object. Skipping!".format(x))
cmds.select(newCrvs, r=True)
评论列表
文章目录