| 首页 | IT动态 | 硬件 | 应用 | 互联网 | 网络 | 网站 | 黑客 | 编程 | 数码 | 视频教程 | 游戏 | 休闲 | 软件 | 视频 | IT认证 | 动漫图片 | IT杂谈 | 论坛 | 
Google
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
  • Maya4.0界面介绍(1)

  • 自定义Maya4.0界面

  • Maya4.0的新增功能

  • Maya简介

  • Maya4.0常用功能-标记菜单

  • Maya4.0常用功能-热键箱

  • Maya4.0界面介绍(2)

  • Maya4.0常用功能-工具架(2)

  • Maya4.0常用功能-快捷键

  • Maya4.0常用功能-层的运用

  • 广 告 位 置
    广告位置
    Q
    您现在的位置: 无忧IT人 >> 应用 >> 多媒体 >> Maya >> 教程正文
    MayaMel基础教程(2)           
    MayaMel基础教程(2)
    作者:51iter 文章来源:www.51iter.com 点击数: 更新时间:2007-10-13
    [ 字体:缩小 正常 放大 | 双击自动滚屏 ]
    请选择合适的字体颜色:
    MayaMel基础教程
    3、使用指令

    包括内容有:输入指令、使用指令行、获得指令返回值、指令模式和指令在表达式中。

    ⑴、输入指令

    Maya提供了一些输入MEL指令的方法;使用脚本语言编辑器(ScriptEditor)或者指令行(CommandLine)是最常用的方法。你也可以在脚本程序文件、MayaASCII(.ma)文件、工具柜图标(shelficons)、热键以及表达式中执行指令。但是最常用的还是在脚本语言编辑器中输入指令。

    无论如何输入指令,所有的MEL指令必须用一个分号结束。以下是MEL指令的一些例子:

    sphere-nameroundy;
    setAttrroundy.translateX7;
    whatIsls;
    helpls;
    ls-typnurbsSurface;

    ⑵、使用指令行

    可以使用指令行输入MEL指令。如果指令行没有出现,在MAYA主菜单中选择Options>CommandLine使指令行出现。

    虽然在指令行和脚本语言编辑器中都可以输入指令,但两者之间有一些重要的区别:

    你可以从指令行,使用数字键盘或字符键盘的Enter键输入指令。而脚本语言编辑器只能用数字键盘的Enter键。

    指令行只有一行,执行一个MEL指令。为了输入更多的MEL指令,指令之间可以?quot;;"分开。

    指令行仅将结果的最后一行显示到右边。而脚本语言编辑器显示所有的结果。

    ⑶、获得指令返回值

    ManyMEL指令返回一个值。为了抓取这个返回值,可以用单引号或者eval指令。

    使用单引号获得指令返回值

    用单引号"`"将指令前后标注出来可以返回指令的输出。随后你可以把这个输出赋给一个变量并在脚本语言编辑器中显示它。



    string$a[];
    $a=`particle-p505-nameSun`;

    print($a);

    第一条语句定义了一个名为$a的阵列。第二条语句执行引号中的MEL指令,并把指令的输出赋给$a。第三条指令把$a的内容显示给脚本语言编辑器,如下:

    Sun

    SunShape

    可以对任何一个MEL指令保存和显示其结果。返回值的类型是由你使用的指令决定的。在以上例子中,粒子命令返回一个字符串阵列。所以,等式左边的变量符号也须要是接受这个返回值的字符串阵列的类型。

    使用eval指令获得指令返回值

    eval指令执行一个命令,也让你抓取返回值。它比起单引号有一个优点,因为你可以从一个字符串建立一个指令。象单引号方式那样,也可以把输出赋给一个变量并显示它。



    string$command="sphere";
    eval($command "-r5");

    第一条语句把字符串sphere标注给变量$command。第二条指令给字符串sphere添加-r5,并执行完整的指令sphere-r5。它产生一个半径为5个格子单位的球体。

    有关eval指令的更多的信息,见掌管指令的在线文件。

    ⑷、指令模式

    MEL指令选项典型地在以下一种或多种模式中起作用:query、编辑和产生。Query模式是用于找出一些事件的值;编辑模式是用于改变一些事件的值;产生模式是产生一些事件。在在线MEL指令参考中,指令选项的描述包括一个Q、E或C以指示query模式、编辑模式、产生模式。

    ⑸、指令在表达式中

    可以在一个表达式中执行MEL指令和序列。但是,如果你执行以下的指令你的场景会产生故障:

    断开或连接属性
    删除或产生物体或者其他项

    在一个表达式中播放你的动画不会撤消MEL指令的执行。例如,如果你的表达式执行MEL指令产生了一对球体,播放这段动画时并不删除原来的球体。再次播放该场景时会产生另一对球体。

    不过你可以通过选择Edit>Undo撤消MEL指令,但是如果你的场景有故障时,它将会不工作。还要注意,你可以只撤消Queue尺寸的设置所允许的许多运算。为设立Queue尺寸,选择Options>GeneralPreferences。

    当你从指令行执行一个指令时,状态信息出现在脚本语言编辑器中和指令行的响应区域里。当在一个表达式中执行指令时,不显示这个信息。关于表达式的更多的内容,请参考UsingMaya:Expressions。

    [1]

    教程录入:51iter    责任编辑:51iter 
  • 上一篇教程:

  • 下一篇教程:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 关于我们 | 友情链接 | 版权申明 |