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