我只想使用 python API 列出当前 Autodesk Maya 场景文件上的所有引用节点(仅限),C++ API 中有一个名为 MFileIO
的类,但返回引用的文件名而不是引用节点,但 Python API 中没有这样的类。
请对此提出任何建议。
注意:我不想仅通过 API 使用 MEL 或 Python 命令。
您可以使用 Maya 的"ls"命令列出场景中的所有引用节点:
import maya.mel as mm
refNodes = mm.eval('ls -type reference')
"refNodes"将包含一个引用节点名称数组。
如果出于某种原因不喜欢使用 Maya 命令,也可以完全通过 API 执行此操作:
import maya.api.OpenMaya as om
it = om.MItDependencyNodes(om.MFn.kReference)
refNodes = om.MObjectArray()
while not it.isDone():
refNodes.append(it.thisNode())
it.next()
"refNodes"将是一个MObjectArray,其中包含场景中所有引用节点的MObjects。