我已经在Maya(python)中编写了一个代码,该代码为我提供了对象在Maya中的位置。如您在第一行中看到的那样,我导入了maya.cmds,在第二行中使用了它
import maya.cmds as cmds
a_end = cmds.xform('j_l_ankle', q=1, ws=1, t=1)
我希望在基本的python代码中具有相同的输出,而无需导入maya.cmds。那意味着我想在baisc python中找到 xform函数的替代版本。
答案 0 :(得分:0)
maya.cmds
模块访问的 Maya Python,是一种 Python包装器,用于调用MEL方法。从字面上看,您正在使用某种Python语法调用MEL方法。这为您提供了使用Python的库在Maya中处理数据的好处(cmds.xform
也不例外)。
大多数Maya嵌入式语言命令已在maya.cmds
模块中实现。但是在某些情况下,必须仅在MEL之上使用MEL,因为Maya并未将Python完全纳入其体系结构的所有方面。而且,我应该说,Autodesk Maya会按程序将其所有MEL命令转换为Python。
因此Python的maya.cmds
模块在很大程度上取决于本机MEL。所有本机Maya命令的 Python绑定在 maya.cmds
模块中。为了访问这些命令,必须在每个会话中导入maya.cmds
。
xform
命令示例:MEL代码:
sphere -n Earth;
xform -r -ro 0 0 45;
等效于Python:
import maya.cmds as cmds
cmds.sphere(n = 'Earth')
cmds.xform(r = True, ro = (0, 0, 45))
如您所见,使用Python编写脚本时,必须通过maya.cmds
模块与本机MEL命令进行通信。