【问题标题】:What is the name for the Maya Python library(ies)?Maya Python 库的名称是什么?
【发布时间】:2016-05-30 17:09:27
【问题描述】:

我要区分Python libraries available in Maya

  1. MEL(嵌入式 Maya 语言)
  2. Maya Python 库maya.cmds,还有maya.standalonemaya.mel.eval
  3. PyMEL [*]pymel.core 和其他人)
  4. Maya Python API 1.0 (maya.OpenMaya)
  5. Maya Python API 2.0 (maya.api.OpenMaya)

Maya Python 库(第 2 项)有名称吗?包含 2、4 和 5 的名称就足够了。

【问题讨论】:

    标签: maya conventions pymel


    【解决方案1】:

    不是真的。 import Maya 将为您提供所有这些,尽管大多数人从低一级开始,例如,import maya.cmds as cmds 在您的列表中还有一些您错过了:OpenMaya,旧 api,有兄弟姐妹OpenMayaRenderOpenMayaUIOpenMayaAnimation 还有maya.util

    您可以像这样列出顶级 Maya 模块的完整名单:

    import maya
    import inspect
    maya_modules = {name:mod for name, mod in inspect.getmembers(maya) if inspect.ismodule(mod) }
    

    Maya 2016 中的完整列表是:

    'OpenMaya': <module 'maya.OpenMaya' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\OpenMaya.pyc'>,
    'OpenMayaAnim': <module 'maya.OpenMayaAnim' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\OpenMayaAnim.pyc'>,
    'OpenMayaFX': <module 'maya.OpenMayaFX' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\OpenMayaFX.pyc'>,
    'OpenMayaMPx': <module 'maya.OpenMayaMPx' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\OpenMayaMPx.pyc'>,
    'OpenMayaRender': <module 'maya.OpenMayaRender' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\OpenMayaRender.pyc'>,
    'OpenMayaUI': <module 'maya.OpenMayaUI' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\OpenMayaUI.pyc'>,
    'app': <module 'maya.app' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\app\__init__.py'>,
    'cmds': <module 'maya.cmds' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\cmds\__init__.py'>,
    'debug': <module 'maya.debug' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\debug\__init__.py'>,
    'mel': <module 'maya.mel' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\mel\__init__.py'>,
    'standalone': <module 'maya.standalone' (built-in)>,
    'utils': <module 'maya.utils' from 'c:\program files\autodesk\maya2016\Python\lib\site-packages\maya\utils.py'>
    

    制作你自己的模块来导入其中的一个子集当然是微不足道的。

    【讨论】:

    • 也许更好的问题是您如何区分maya Python 库和 Maya 应用程序? (例如在谈话中)
    • 我认为大多数人很少谈论 maya 命名空间:如果你在周围搜索一下,你会发现大约 85% 的内容是 cmds(众所周知),其余大部分是 @987654332 @ 或 'api2' 表示 maya.api.XXX
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-18
    • 2015-03-09
    • 1970-01-01
    • 1970-01-01
    • 2022-11-01
    • 1970-01-01
    相关资源
    最近更新 更多