使用aimConstraint Maya Python Pymel时出错

时间:2013-03-10 14:09:32

标签: python maya pymel

我有一个Spot Lights领域,我正在尝试使用pm.aimConstraint将目标链接到定位器(称为“Light Point”)。这是我正在努力的部分以及它给我的错误:

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”是for循环范围内的灯数,转换为字符串。这会得到同样的错误。

我仍然是python的新手,但之前使用过第一个脚本,我很困惑为什么它不能用于任何事情,甚至不是聚光灯。

2 个答案:

答案 0 :(得分:1)

“Light Point”不是有效的对象名称。

在Maya中创建节点时,您需要捕获创建时给定的对象,否则无法保证您认为它是对象。

答案 1 :(得分:0)

我意识到这是一篇较老的帖子,但其他人应该看到它, PyMEL具有PyNode()功能。因此,如果您要通过“Light Point”,它将返回场景中的对象。

from pymel.core import *

PyNode("myCube")
# Result: nt.Transform(u'myCube') #