观察脚本历史

 
 
 

“脚本编辑器”(Script Editor)显示已执行命令的运行历史以及 Maya 执行的命令的结果。可以从“脚本编辑器”(Script Editor)的历史区域复制大多数命令并将它们粘贴在输入区域来执行。

设置“脚本编辑器”(Script Editor)

  1. 选择“窗口 > 常规编辑器 > 脚本编辑器”(Window > General Editors > Script Editor)

    将打开“脚本编辑器”(Script Editor)窗口。

“脚本编辑器”(Script Editor)的下半部分是输入区域,您可以在该区域输入脚本命令。

默认情况下,Maya 将显示已执行命令的基本反馈。但是,“回显所有命令”(Echo All Commands)启用时,Maya 将显示命令的所有历史,包括脚本调用另一个脚本或修改用户界面元素时的历史。而学习 MEL 时,“回显所有命令”(Echo All Commands)启用时生成的输出附加行会造成混乱,因为存在的输出过多。在 MEL 方面变得更有经验时,历史附加行对调试 MEL 脚本会非常有用。

  1. “脚本编辑器”(Script Editor)窗口中,确保“历史 > 回显所有命令”(History > Echo All Commands)旁边没有复选标记。

观察脚本历史

  1. “脚本编辑器”(Script Editor)中,单击“清空历史”(Clear History)按钮。

    “脚本编辑器”(Script Editor)中没有其他历史时,可以更轻松地隔离由执行的命令创建的命令历史。

  2. “工具架”(Shelf)中,选择“曲面”(Surfaces)选项卡,以查看放置在该工具架上的工具。
  3. 单击“曲面工具架”(Surfaces Shelf)上的 NURBS 球体按钮。

    命令历史显示在“脚本编辑器”(Script Editor)的历史区域:

    CreateNURBSSphere;
    sphere -p 0 0 0 -ax 0 1 0 -ssw 0 -esw 360 -r 1 -d 3 -ut 0 -tol 0.01 -s 8 -nsp 4 -ch 1;objectMoveCommand;
    

    按下工具架按钮时会执行多个 MEL 命令。按下按钮时将发生以下操作:

    • 曲面“工具架”(Shelf)上的 NURBS 球体按钮执行称为 CreateNURBSSphere; 的脚本。
    • CreateNURBSSphere 脚本调用 sphere MEL 命令,使用标志将命令的参数设定为 NURBS 球体菜单选项窗口当前指定的值。sphere MEL 命令使用简短形式的标志。
    • 每次创建基本体时都会执行 objectMoveCommand。该命令会将创建的对象移动到原点。

    MEL 中的命令必须用分号分隔。其他空格和其他回车不影响执行脚本。空白区和回车可以使脚本更易于阅读。不能通过多余空格或回车将标志与连字符分离。

提示有关这些标志的详细信息,请参见“MEL 命令参考”中的 sphere

“MEL 命令参考”(MEL Command Reference)提供了所有 MEL 命令和标志功能的完整列表。

注意

可以从“脚本编辑器”(Script Editor)历史区域复制命令,然后将它们粘贴到输入区域来执行。

  1. 通过按键盘上的 Delete 键删除 NURBS 球体。

“脚本编辑器”(Script Editor)中键入 MEL 命令

  1. “脚本编辑器”(Script Editor)中选择“MEL”选项卡。

    “脚本编辑器”(Script Editor)选项卡可使您快速在 MEL 和 Python 脚本输入模式之间进行切换。可以创建其他脚本编辑器选项卡来作为脚本的临时存放区域。

  2. “脚本编辑器”(Script Editor)的输入区域键入以下命令。
    polyCube;
    
    提示

    要求键入命令时,可以从这些教程中将其复制并粘贴到“脚本编辑器”(Script Editor)的输入区域。

  3. 通过按数字键盘上的 键来执行命令。

    必须始终按数字键盘上的 键或 + (键盘上的常规 Enter 键)来执行命令。按常规 键只会在“脚本编辑器”(Script Editor)输入区域创建新行。

    将在原点创建一个多边形立方体。

    执行之后,将从“脚本编辑器”(Script Editor)的输入区域移除该命令。命令和命令的结果将输出到“脚本编辑器”(Script Editor)的历史区域:

    polyCube;// Result: pCube1 polyCube1 //

    注意

    在未来的课程中,当一系列的 MEL 或 Python 命令创建输出时,仅命令创建的输出将被引用为脚本编辑器的输出。

MEL 中的注释以 // 开始,MEL 将忽略该行上这些字符后的任何内容。相同的约定用于显示脚本编辑器历史区域中的命令的结果和输出。同样,Python 的结果、注释和消息输出以 Python 注释符号 (#) 开始。

注意

在本课程剩余部分和其余 MEL 课程中,要求键入命令时,使用键盘上数字键盘的 Enter 键在键入命令后执行命令。也可以使用 + (Windows) 或 + (Mac OS X) 来执行命令。

提示

如果不希望执行之后从“脚本编辑器”(Script Editor)的输入区域移除命令,请在执行之前通过使用鼠标选择来亮显命令。