我在脚本和法语方面有点新意,所以如果我的解释不是很清楚的话,请不要理我。
我试图在Maya中创建一个脚本来轻松管理动画的键值。
所以我创建了一个窗口,用另一个组织复制Maya的ChannelBox。
现在,我尝试在不同的textField(transX
,Y
,Z
,rotX
..)内获取所选对象的属性值。< / p>
以下是我现在所拥有的:
transX_value = cmds.textField( w=100 , h=22 , tx= cmds.getAttr("%s.translateX" %selected) )
但是,当我选择我的多维数据集进行测试并启动我的脚本时,会出现此错误:
TypeError: Object [u'pCube1'].translateX is invalid
所以我尝试了这样的事情,看看问题是否来自我的表述:
transX_value = cmds.textField( w=100 , h=22 , tx= cmds.getAttr("pCube1.translateX") )
它在textField中工作并打印了好的值。
如何调用任何所选对象的属性?我刚刚发现%s
命令,所以我确定我没有正确使用它。
答案 0 :(得分:2)
这是一个非常常见的错误。您的'selected'变量包含列表,而不是字符串。你应该得到第一个列表值,所以只需改变你的代码:
transX_value = cmds.textField(w=100, h=22, tx=cmds.getAttr("%s.translateX" % selected[0]))