如何在Maya中访问对象的notes字段

时间:2009-08-28 09:58:33

标签: maya

是否可以通过Maya脚本界面访问对象的“notes”字段?我试图让它在Python中运行,但我认为任何指向正确方向的指针我需要在API中使用哪个类/函数将帮助我。

2 个答案:

答案 0 :(得分:3)

当您在属性编辑器中键入notes字段时,会将名为"notes"的属性动态添加到节点。因此,要检查该值,您可以检查节点上是否存在名为“notes”的属性,然后检索该值。

maya UI用于创建和设置notes属性的mel过程称为

setNotesAttribute(string $nodeName, string $longAttrName, string $shortAttrName, string $attrType, string $newAttrValue)

如果长名称为"notes",则短名称为"nts",类型为"string"

答案 1 :(得分:2)

由于现在每个人都在使用PyMEL,以下是如何使用PyMEL获取它:

import pymel.core
# cast selected into PyNode
node = pymel.core.ls(sl=1)[0]

# PyMEL's convenient getAttr syntax
node.notes.get()

这假设您已经在属性编辑器中的Notes字段中添加了一些内容。如上所述,只会创建注释attr。

如果您从代码中运行全部并且您不知道是否已创建注释attr,则可以检查是否存在如下:

if node.hasAttr('notes'):
    node.notes.get()
else:
    # go ahead and create attr
    node.addAttr('notes', dt='string')
    node.notes.get()

考虑使用PyMEL,它就像maya.cmds,只有Pythonic。