存储场景信息
 
 
 

将度量注释的值存储为变量。变量是一个名称,用于方便引用内存中的特定位置。内存中的该位置可以存储数据。

变量具有四个主要特征:名称、类型、值和范围。名称、类型和范围在创建时定义。定义变量的名称和类型称为声明变量。在 MEL 中,变量的名称始终带有前缀“$”符号,向脚本语言指示以下字符用于命名变量。

变量的范围确定可以访问变量的位置。如果在某个代码块内声明一个变量,则无法从该代码块外部访问该变量。

名称和类型在创建后无法更改。变量的值可以更改,但该值必须为先前定义的类型。

注意

MEL 中的变量应始终明确定义其类型。如果未明确声明,脚本语言会尝试通过变量第一次出现的上下文来推断该变量的数据类型。最好明确声明变量,因为隐式定义变量可能会导致脚本错误并降低脚本执行速度。

将场景信息存储为变量

  1. “脚本编辑器”(Script Editor)中,键入以下命令,然后按 Enter 键:
    float $diameter_barrel;
    

    该命令声明数据类型为浮点的变量,名称为 diameter_barrel。浮点值是包含小数的数字。

  2. 若要将某个值指定给变量,请键入以下内容。
    $diameter_barrel = 4.2;
    

    桶的直径为 4.2 个单位。将场景中的该值指定给变量。使用赋值运算符 (=) 将值指定给变量。

存储其他类型的数据

MEL 还支持大多数其他编程语言公用的其他数据类型。

声明字符串变量

  1. “脚本编辑器”(Script Editor)中键入以下内容
    string $testString = "this is a test";
    print $testString;
    

    以下内容是“脚本编辑器”(Script Editor)的输出:

    this is a test
    

    字符串数据类型用于存储多个字符。print 命令将变量的值输出到“脚本编辑器”(Script Editor)

    注意

    可以声明变量,并在同一语句中为其指定值。

声明整型变量

  1. “脚本编辑器”(Script Editor)中键入以下内容
    int $testInt = 5;
    print ($testInt/2);
    

    以下内容是“脚本编辑器”(Script Editor)的输出:

    2
    

    Int 数据类型用于存储整数值。整数包括正整数和负整数。在编程中,当一个整数除以另一个整数时,结果是一个整数,因此这里的输出不是 2.5(2.5 不是整数)。

    打印命令的参数括在括号中。打印命令只能采用一个参数,因此使用括号告知 Maya 在执行命令之前对括号的内容求值。括号也可以嵌套在方法中(类似于数学语句)来确定语句求值的顺序。

在随后的步骤中,将创建一行桶(均匀分隔这些桶)。这将创建恰好接触的桶,以确保在刚体模拟期间没有交点

在下一节中,将使用移动命令来放置重复的桶,并将直径的保存值用作命令 Z 值的一个参数。