使用Python API获取Maya中的参考节点列表

时间:2017-11-06 13:05:01

标签: python c++ maya maya-api

我只想使用python API(仅)列出当前Autodesk Maya场景文件中的所有参考节点,在C ++ API中有一个名为MFileIO的类,但返回引用的文件名而不是引用节点,但Python API中没有这样的类。

请对此提出任何建议。

注意:我不想仅通过API使用MEL或Python命令。

1 个答案:

答案 0 :(得分:1)

您可以使用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,包含场景中所有参考节点的MObject。