3ds max 5. Библия пользователя

         

Условия



Условия

Это один из способов управления потоком выполнения сценария. Обычно 3ds max выполнят команды одну за другой, а при достижении последней строки завершает выполнение. Но при наличии условий выполнение сценария будет продолжено только в том случае, если результат выражения — истина.

Предположим, что в сценарии используются следующие строки:

Переменной b никогда не будет присвоено значение 2 (строка b = 2), поскольку выражение (а == 5) ложно. Другими словами, если выражение, следующее за оператором if, истинно, то выполняются операторы в скобках, следующие за ним. В противном случае (выражение, следующее за оператором if, ложно,) операторы в скобках пропускаются. Синтаксис оператора if выглядит следующим образом: If <выражение> then <действия> Здесь <выражение> — условие выполнения <действия>. Если условие ложно, то для выполнения действий используется ключевое слово else, например:

После выполнения приведенного кода переменной b присваивается значение 3, поскольку выражение (а == 5) ложно.

Коллекции и массивы

В MAXScript есть полезное свойство, с помощью которого управляют группами объектов. Группу объектов часто называют коллекцией {collection). Коллекцию можно представить в виде ящика, в котором содержатся неупорядоченные объекты или переменные.

С коллекцией работают, как с группой объектов определенного типа. Например, с помощью операторов

создается коллекция всех объектов сцены, имена которых начинаются с символов pokey, а затем этим объектам коллекции присваивается красный цвет.

В MAXScript существует несколько полезных встроенных коллекций, например cameras и lights, содержащих соответственно все камеры и источники света сцены. Так, оператор

delete lights



удаляет все источники света из сцены (используйте подобные операторы с большой осторожностью).

Массив {array) — это тип коллекции, содержащей упорядоченные объекты, доступ к которым можно осуществить с помощью индекса массива, например:

В последней строке отображается текущее значение массива:

Обратите внимание, что некоторые элементы массива не определены, на их месте отображается значение undefined.

С помощью ключевого слова as можно преобразовать коллекцию в массив:

В приведенной строке встроенная коллекция источников света lights преобразуется в массив с именем LightArray.

Элементы массива или коллекции могут иметь различные типы данных, т.е. допускается совместное использование числовых, строковых и объектных значений, например:

Для преобразования типов данных можно использовать ключевое слово as. Например, в выражении (5 as string) числовое значение 5 преобразуется в строковое "5", а в выражении (5 as float) — в значение с плавающей точкой 5,0.



Содержание раздела