You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何获取Maya中ls命令支持的所有类型列表?

我懂你的困扰——官方文档确实没把ls支持的所有类型直接列出来,找起来挺费劲的。不过有几个靠谱的方法能一次性拿到所有可用类型,甚至还能验证它们是否有效:

方法1:用PyMel的API模块直接获取

PyMel内置了专门的工具可以列出所有适配ls(type=...)的节点类型,运行这段代码就能得到完整列表:

import pymel.core as pm
all_valid_types = pm.api.types.allNodes()
print(all_valid_types)

输出里的每一项都可以直接传给lstype参数,比如pm.ls(type="nurbsSurface")完全有效。

方法2:用nodeType命令快速获取

lstype参数本质上对应的就是Maya的节点类型,所以用nodeTypelist参数也能拿到全部合法类型,代码更简洁:

import pymel.core as pm
all_node_types = pm.nodeType(list=True)
print(all_node_types)

这个方法得到的结果和第一种基本一致,而且不需要调用底层API模块,用起来更顺手。

方法3:查看Maya内置的节点类型参考

如果想要带详细说明的类型列表,可以打开Maya的内置帮助(按F1),搜索「Node Types Reference」,里面会按功能分类列出所有节点类型,每个类型都有用途说明,而且这些类型都能直接用于ls命令的type参数。

另外补充个小提示:常用的类型除了你提到的camerameshjoint,还有nurbsCurvelighttransformlocatormaterial这些,但上面的方法能帮你拿到完整无遗漏的类型列表。

内容的提问来源于stack exchange,提问作者Santosh Kumar

火山引擎 最新活动