[Maya API]lesson21_Maya API 的全局操作方法 - MGlobal
MGlobal全局操作类函数
MGlobal
功能:提供通用API全剧功能的静态类
特性:无需实例化,直接可以使用静态方法
我们可以使用它的方法去做一些不是针对性特别强的,只是公用的一些功能,他的方法都是静态方法,我们直接调用即可,
1.首先我们导入maya.OpenMaya中的MGlobal
from maya.OpenMaya import MGlobal
2.可以使用apiVersion来获得他的api版本
from maya.OpenMaya import MGlobal
MGlobal.apiVersion()
3.我们要获得场景里面的选择的物体,类似于我们的ls命令
这个命令就会把我们当前选择的内容存储到这个sel里面,如图选中了一个物体,这个MSelection的列表中的元素就是1个。
from maya.OpenMaya import MGlobal
sel = OpenMaya.MSelectionList()
OpenMaya.MGlobal.getActiveSelectionList(sel)
sel.length()
4.我们可以setActiveSelectionList(),直接选择物体也就等于我们的选择命令,也就类似于select后面跟一组列表,里面是一组物体的名字。
from maya.OpenMaya import MGlobal
sel = OpenMaya.MSelectionList()
OpenMaya.MGlobal.getActiveSelectionList(sel)
OpenMaya.MGlobal.setActiveSelectionList(sel)
5.我们还可以使用它来执行一个python命令,比如OpenMaya.MGlobal.excuteCommand("createNode 'joint'")
默认没有输出结果,所以我们需要使用一个变量来接受输出的结果
如果有时候我们的插件里面需要调用的她原有的命令的时候,就可以在AP里面调用这些东西,在API里面,我们可以使用excuteCommand后面加上MEL或者Python命令,那么调用python命令,用的事excutePythonCommand,我们还可以使用它判断场景里面的状态。
比如说判断是Y轴向上,还是Z轴朝上,返回一个bool值
使用它显示一部分信息,显示输出警告或者错误信息,可以使用displayInfo
显示正常提示信息:OpenMaya.MGlobal.displayInfo('info msg.....')
显示警告信息: OpenMaya.MGlobal.displayWarning('info msg.....')
显示错误信息: OpenMaya.MGlobal.displayError('info msg.....')
更改帧的位置:OpenMaya.MGlobal.viewFrame(30)
上一篇: 在IK链中实现拉伸效果之早古方法
下一篇: spring如何解决循环引用的