查看: 1151|回复: 0
打印 上一主题 下一主题

Maya Mel基础教程(2)

[复制链接]
.    

3797

主题

11

听众

5万

积分

首席设计师

Rank: 8Rank: 8

纳金币
32328
精华
41

活跃会员 优秀版主 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2012-11-19 16:06:28 |只看该作者 |倒序浏览
3、使用指令
包括内容有:输入指令、使用指令行、获得指令返回值、指令模式和指令在表达式中。
⑴、输入指令
maya提供了一些输入MEL指令的方法;使用脚本语言编辑器(Script Editor)或者指令行(Command Line)是最常用的方法。你也可以在脚本程序文件、Maya ASCII(.ma)文件、工具柜图标(shelf icons)、热键以及表达式中执行指令。但是最常用的还是在脚本语言编辑器中输入指令。
无论如何输入指令,所有的MEL指令必须用一个分号结束。以下是MEL 指令的一些例子:
sphere -name roundy;

setAttr roundy.translateX 7;

whatIs ls;

help ls;

ls -typ nurbsSurface;
⑵、使用指令行
可以使用指令行输入MEL指令。如果指令行没有出现,在MAYA主菜单中选择Options > Command Line使指令行出现。
虽然在指令行和脚本语言编辑器中都可以输入指令,但两者之间有一些重要的区别:
你可以从指令行,使用数字键盘或字符键盘的Enter键输入指令。而脚本语言编辑器只能用数字键盘的Enter键。
指令行只有一行,执行一个MEL指令。为了输入更多的MEL指令,指令之间可以?quot;;"分开。
指令行仅将结果的最后一行显示到右边。而脚本语言编辑器显示所有的结果。
⑶、获得指令返回值
Many MEL指令返回一个值。为了抓取这个返回值,可以用单引号或者eval指令。
使用单引号获得指令返回值
用单引号"`"将指令前后标注出来可以返回指令的输出。随后你可以把这个输出赋给一个变量并在脚本语言编辑器中显示它。

string $a[];

$a = `particle -p 5 0 5 -name Sun`;
print($a);
第一条语句定义了一个名为$a的阵列。第二条语句执行引号中的MEL指令,并把指令的输出赋给$a。第三条指令把$a的内容显示给脚本语言编辑器,如下:
Sun
SunShape
可以对任何一个MEL指令保存和显示其结果。返回值的类型是由你使用的指令决定的。在以上例子中,粒子命令返回一个字符串阵列。所以,等式左边的变量符号也须要是接受这个返回值的字符串阵列的类型。
使用eval指令获得指令返回值
eval指令执行一个命令,也让你抓取返回值。它比起单引号有一个优点,因为你可以从一个字符串建立一个指令。象单引号方式那样,也可以把输出赋给一个变量并显示它。

string $command = "sphere";

eval($command + " -r 5");
第一条语句把字符串sphere标注给变量$command。第二条指令给字符串sphere添加 -r 5,并执行完整的指令sphere -r 5。它产生一个半径为5个格子单位的球体。
有关eval指令的更多的信息,见掌管指令的在线文件。
⑷、指令模式
MEL指令选项典型地在以下一种或多种模式中起作用:query、编辑和产生。Query模式是用于找出一些事件的值;编辑模式是用于改变一些事件的值;产生模式是产生一些事件。在在线MEL指令参考中,指令选项的描述包括一个Q、E或C以指示query模式、编辑模式、产生模式。
⑸、指令在表达式中
可以在一个表达式中执行MEL指令和序列。但是,如果你执行以下的指令你的场景会产生故障:
断开或连接属性

删除或产生物体或者其他项
在一个表达式中播放你的动画不会撤消MEL指令的执行。例如,如果你的表达式执行MEL指令产生了一对球体,播放这段动画时并不删除原来的球体。再次播放该场景时会产生另一对球体。
不过你可以通过选择Edit > Undo撤消MEL指令,但是如果你的场景有故障时,它将会不工作。还要注意,你可以只撤消Queue尺寸的设置所允许的许多运算。为设立Queue 尺寸,选择Options > General Preferences。
当你从指令行执行一个指令时,状态信息出现在脚本语言编辑器中和指令行的响应区域里。当在一个表达式中执行指令时,不显示这个信息。 关于表达式的更多的内容,请参考Using Maya: Expressions。
【来源软件学院】

更多精彩教程,尽在web3D纳金网http://www.narkii.com/college/
分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2024-11-27 07:34 , Processed in 0.084231 second(s), 33 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部