使用aimConstraint时出现错误 Maya Python Pymel
我有一片聚光灯,想用 pm.aimConstraint
把它们的目标链接到一个叫“光点”的定位器上。这里是我遇到问题的部分,以及它给我的错误信息:
import pymel.core as pm
aimTarget = "Light Point"
selection = pm.ls(sl = True)
for each in selection:
pm.aimConstraint(aimTarget, each)
Error: MayaNodeError: file C:\Program Files\Autodesk\Maya2013\Python\lib\site-packages\pymel\internal\pmcmds.py line 140: #
显然,我选择的都是聚光灯。
理想情况下,我希望能不选择所有灯光,这样做可能看起来像这样:
pm.aimConstraint("Light Point", "spotLight"+light)
这里的“light”是一个循环中灯光的数量,转换成字符串。这也出现了同样的错误。
我对python还是很陌生,但之前用过第一个脚本,现在很困惑为什么它在任何情况下都不工作,甚至连聚光灯也不行。
2 个回答
0
我知道这是一篇较旧的帖子,但如果其他人看到的话,想告诉大家,PyMEL有一个叫做 PyNode()
的函数。也就是说,如果你把“Light Point”传给这个函数,它会返回场景中的那个对象。
也就是说:
from pymel.core import *
PyNode("myCube")
# Result: nt.Transform(u'myCube') #
1
“Light Point” 不是一个有效的对象名称。
在Maya中创建节点时,你需要保存你创建时给定的对象,否则就不能保证它是你想象中的那个对象。