MAYA中的PYTHON:获取所有属性

2024-10-01 17:27:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我想知道是否有一种方法可以获得pymel.core.getAttr()(对于cmds用户,maya.cmds.getAttr())可以获得的属性列表。__dict__没有给出该列表。在

import pymel.core as pmc

myCubeTrans, myCubeShape = pmc.polyCube()

>>> print myCubeTrans.__dict__

{'__apiobjects__': {'MDagPath': <maya.OpenMaya.MDagPath; proxy of <Swig Object of type 'MDagPath *' at 0x00000000132ECCC0> >, 'MObjectHandle': <maya.OpenMaya.MObjectHandle; proxy of <Swig Object of type 'MObjectHandle *' at 0x00000000132EC9F0> >, 'MFn': <maya.OpenMaya.MFnTransform; proxy of <Swig Object of type 'MFnTransform *' at 0x00000000132ECA80> >}, '_name': u'pCube1'}

>>> print myCubeShape.__dict__

{'__apiobjects__': {'MObjectHandle': <maya.OpenMaya.MObjectHandle; proxy of <Swig Object of type 'MObjectHandle *' at 0x000000001326DD50> >, 'MFn': <maya.OpenMaya.MFnDependencyNode; proxy of <Swig Object of type 'MFnDependencyNode *' at 0x00000000132ECD50> >}, '_name': u'polyCube1'}

所以我想知道python在执行pmc.getAttr(myCubeTrans.translate)(或myCubeTrans.translate.get()或{})时在哪里寻找


Tags: ofobjecttypedictatswigproxymaya
1条回答
网友
1楼 · 发布于 2024-10-01 17:27:46

您可能正在寻找cmds.listAttr()

这里有文档:Autodesk Maya 2014 Python commands

用法:

import maya.cmds as cmds

cmds.polyCube( n="myCube")
print cmds.listAttr( "myCube" )

我建议您查看可用的标志来过滤一些属性(read标志将满足您的需要,因为它只返回可读的属性)。在

注意: 我没有检查pyMel版本,但我想这是实现和工作方式相同。在

更新1:查看所有属性及其类型的快捷方式

^{pr2}$

更新2:PyMel doc: listAttr在PyMel中也可用。在

相关问题 更多 >

    热门问题