Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теория MAXScript.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
278.53 Кб
Скачать

Синтаксис

Если строка длинная, ее можно разбить. Исходная строка: a + b * c / d – e + f * g / h

Можно разбить только после любого оператора. MAXScript будет искать продолжение на следующей строке.

Так работает:              a + b * c / d – e +        А так не работает:      a + b * c / d – e

f * g / h                                                            + f * g / h

Можно разбить, добавив символ “\”:          a + b * c / d – e \

                                                                        f * g / h

Несколько выражений можно записать в одной строке, разделив их символом “;”:

print “End of input data reached” to: f; close f; f = undefined

Комментарий первого типа в MAXScript начинается с символов “--” и распространяется до конца строки: a = 5 -- В переменную а записано число 5

/* Комментарий второго типа

может располагаться

на нескольких строках*/

 

Целые (integer) и вещественные (float) числа

При выполнении простейших математических операций результат, как правило, имеет тот же тип, что и аргументы: 3 + 4 возвращает 73.0 + 4.0 возвращает 7.0. Однако, если совместно используется оба типа чисел, целое понимается как вещественное: 3 + 4.0 возвращает 7.0

 

Переменные

variable_name = variable_value -- присвоение переменной значения

variable_name = “Текст” -- строковая переменная

local y = 2, x -- объявление локальных переменных (действуют в текущем блоке)

global bzzz -- объявление глобальных переменных (действуют всю сессию 3ds max)

Имя переменной должно начинаться с буквы или символа “_”. Ее значение – любое число, строка или выражение.

 

Массивы

В массиве может содержаться любое количество элементов, каждый любого типа.

a = #( ) -- пустой массив

a = #(5, “four”, pi, 11.17) -- массив с элементами

a[int-- элемент массива, int - номер элемента (целое число, нумерация с 1)

Например: a[2] возвращает four

 

Простейшие математические операторы и выражения

С числами

4/3 * pi * 2.5^3 -- формула объема сферы радиусом 2.5. Возвращает 49.0874

as string -- возвращает “3”

 

Со строками

a = “MAXScript”; b = “ FOREVER”

a + b -- возвращает “ MAXScript FOREVER”

3” as float -- возвращает 3.0

3.56” as integer -- возвращает 3

 

Создание случайных чисел

Тип числа зависит от типа первого аргумента в операторе random

random 1 100 -- возвращает случайное целое число между 1 и 100

random 1.0 100 -- возвращает случайное вещественное число между 1 и 100

Числа будут одинаковыми всякий раз при перезагрузке 3ds max. Чтобы избежать этого, можно использовать операторseed <number>, где <number> это любое целое или вещественное число. Пример: seed 5

 

Приращения

<переменная> += <выражение>              добавляет <выражение> к переменной

<переменная> -= <выражение>               вычитает <выражение> из переменной

<переменная> *= <выражение>              умножает переменную на <выражение>

<переменная> /= <выражение>               делит переменную на <выражение>

Поэтому запись x = x + 1 равносильна записи x += 1

 

Операторы сравнения

<compare_operand> == <compare_operand>         оба операнда равны

<compare_operand> != <compare_operand>          оба операнда не равны

<compare_operand> < <compare_operand>           левый операнд меньше правого

<compare_operand> <= <compare_operand>         левый меньше или равен правому

<compare_operand> > <compare_operand>           левый операнд больше правого

<compare_operand> >= <compare_operand>         левый больше или равен правому

Логические операторы

<logical_operand>     and      <logical_operand>     истина, если истинны оба

<logical_operand>     or         <logical_operand>     истина, если истинен хотя бы один

not       <logical_operand>     истина, если операнд ложен