嗨,我是一个Python和脚本编写的新手,阅读了很多教程,并尝试创建脚本,将curveShapes合并到一条具有多形状的曲线,它对我来说工作正常。但在这里我有一个错误,当我启动脚本第一次发射后玛雅它给了我回溯,如果它是一个运行时它不给任何错误或回溯:Maya python脚本将几条曲线合并为一条
// Error: Not enough objects or values.
# Traceback (most recent call last):
# File "<maya console>", line 2, in <module>
# File "C:/Users/.../maya/2017/scripts\CreateOneCurve.py", line 17, in <module>
# cmds.parent(r=True, s=True)
# RuntimeError: Not enough objects or values. //
这里我的脚本:
#Funcion for create list of objects
def listCurveObj():
shapeList = cmds.ls(cmds.listRelatives(s=True), s=True)
groupList = cmds.ls(cmds.group(em=True, n='Curve#'))
listAllobjects = []
for obj in groupList:
listAllobjects.extend(shapeList)
listAllobjects.extend(groupList)
return listAllobjects
#Create one Curve
cmds.select(listCurveObj())
cmds.parent(r=True, s=True)
#Clean scene
transforms = cmds.ls(type='transform')
deleteList = []
for tran in transforms:
if cmds.nodeType(tran) == 'transform':
children = cmds.listRelatives(tran, c=True)
if children == None:
print '%s, has no childred' %(tran)
deleteList.append(tran)
if len(deleteList) > 0:
cmds.delete(deleteList)
任何人都可以帮忙吗?
只是为了记录,最好使用'pymel.core'而不是'maya.cmds',它非常相似,但给了更多的控制权。我有时候会重新安装maya,然后看看,可能需要几天时间:) – Peter