Массивы объектов
Массив - это совокупность дубликатов выделенного объекта (набора объектов), равномерно распределенных в пределах определенной области пространства. Массив создается путем дублирования выделенного объекта или набора объектов и применения к дубликатам заданной комбинации преобразований перемещения, поворота и масштабирования с учетом текущей системы координат и текущего выбора центра преобразования. Массив может быть одномерным (дубликаты располагаются вдоль одной кривой: линии, дуги окружности или спирали), двухмерным (дубликаты располагаются вдоль нескольких подобных кривых, смещенных одна относительно другой) или трехмерным (размещение дубликатов вдоль нескольких подобных кривых повторяется заданное число раз с указанным смещением).
Размерность массива не связана с размерностью пространства сцены: например, одномерный массив может размещаться в трехмерном пространстве. В простейшем случае, когда одномерный массив представляет собой размещение объектов вдоль прямой линии, двухмерный массив будет представлять собой несколько рядов объектов, а трехмерный - несколько слоев по несколько рядов объектов. Однако понятия «ряды» и «слои» утрачивают смысл, если одномерный массив представляет собой размещение объектов не вдоль прямой, а, скажем, вдоль спирали.
Для создания массива выполните следующие действия:
Выделите один или несколько объектов, дубликаты которых должны образовать массив. Выберите команду меню Tools Array (Сервис Массив). Кнопка Array (Массив) также имеется, но в max 6 она располагается не на главной панели инструментов, а на небольшой панели Extras (Дополнения). О том, как вызвать появление такой панели на экране, подробно рассказывалось в главе 2 «Элементы интерфейса max 6». Если выбрать указанную команду или щелкнуть на данной кнопке, не выделив предварительно нужный объект (набор объектов), появится окно Create Array (Создать массив) с сообщением Selection Set is Empty (Выделенный набор пуст). Щелкните на кнопке ОК. выделите объект (объекты) и повторите выбор команды или кнопки Array (Массив).
Для задания параметров массива появится окно диалога Array (Массив), показанное на рис. 4. 56. В заголовке раздела Array Transformation (Преобразование массива) указываются тип текущей системы координат (например, World Coordinates - Глобальные координаты) и выбранный вариант центра преобразования (например, Use Pivot Point Center - Использовать опорные точки объектов).
Рис. 4. 56. Окно диалога Array (Массив)
В строках преобразований Move (Перемещение), Rotate (Поворот) и Scale (Масштаб) раздела Array Transformation (Преобразование массива) щелкните на одной из кнопок со стрелками, указывающими влево или вправо, чтобы определить, какая из двух групп счетчиков - Incremental (Приращения) или Totals (Пределы) - будет использоваться для задания величин параметров преобразований по каждой из координатных осей X, Y и Z. Параметры перемещения задаются в единицах длины, поворота - в градусах, масштаба - в процентах. Счетчики группы Incremental (Приращения) задают величины смещений каждого последующего дубликата объекта относительно предыдущего по расстоянию для преобразования Move (Перемещение) или по углу для преобразования Rotate (Поворот), а также приращения масштаба для преобразования Scale (Масштаб) Счетчики группы Totals (Пределы) задают пределы размещения дубликатов по расстоянию или по углу, а также предел изменения масштаба. Заданное число дубликатов равномерно распределяется в указанных пределах.
Установите флажок Re-Orient (Менять ориентацию), чтобы вызвать изменение ориентации дубликатов объекта в массиве, создаваемом преобразованием поворота. Если флажок сброшен, дубликаты объекта будут сохранять ориентацию оригинала.
Установите флажок Uniform (Равномерно) для включения режима равномерного преобразования масштаба объекта по всем трем осям координат. В этом случае доступным оказывается только счетчик коэффициента масштаба по оси X, а значение введенного коэффициента распространяется на все три оси.
Задайте тип дубликатов, помещаемых в массив, с помощью переключателя Type of Object (Тип объектов), имеющего три положения: Сору (Копия), Instance (Образец) пли Reference (Экземпляр).
Определите размерность массива, установив переключатель раздела Array Dimensions (Размерность массива) в одно из трех положений: 1D (Одномерный), 2D (Двухмерный) или 3D (Трехмерный). Укажите число элементов в массиве по каждой из размерностей в группе счетчиков Count (Число): счетчик в строке параметра 1D (Одномерный) задает количество дубликатов вдоль заданной кривой (по умолчанию устанавливается 10), счетчик в строке 2D (Двухмерный) - число подобных кривых, вдоль которых размещаются дубликаты, а в строке 3D (Трехмерный) - число размещений дубликатов вдоль наборов подобных кривых. В поле параметра Totat in Array (Всего в массиве) указывается общее число элементов в массиве, считая исходный объект (набор объектов).
Задайте величины смещений между рядами и слоями дубликатов объектов с помощью счетчиков X, Y и Z группы Incremental Raw Offsets (Сдвиги между рядами).
Чтобы вернуть всем параметрам окна диалога значения, принятые по умолчанию, щелкните на кнопке Reset All Parameters (Восстановить все параметры).
Закончив настройку, щелкните на кнопке 0К для создания массива.
На рис. 4. 57 показан пример одномерного массива из шести объектов, построенного при следующих условиях:
Рис. 4. 57. Пример одномерного массива из шести объектов
исходный объект-кресло расположен относительно начала глобальной системы координат, то есть точки (0; 0; 0; ), с таким расчетом, чтобы можно было использовать эту точку в качестве центра создаваемого размещения объектов;
на главной панели инструментов выбраны система координат World (Глобальная) и кнопка Use Transform Coordinate Center (Использовать начало координат);
щелчком на кнопке Reset All Parameters (Восстановить все параметры) установлены принятые по умолчанию значения всех параметров массива;
в счетчике Z группы Totals (Пределы) преобразования Rotate (Поворот) указано 360;
♦установлен переключатель 1D (Одномерный) и в счетчике Count (Число) число объектов в массиве задано равным 6.
На рис. 4. 58 показан пример одномерного массива из 36 примитивов Box (Параллелепипед), размещающихся вдоль трехмерной спирали в виде винтовой лестницы. Массив построен при следующих условиях:
Рис. 4. 58. Пример одномерного массива объектов-ступенек, размещающихся вдоль трехмерной спирали в виде винтовой лестницы
исходный объект Box (Параллелепипед), имитирующий одну ступеньку, построен в окне вида сверху и ориентирован длинной стороной вдоль горизонтальной оси X. Параллелепипед расположен симметрично относительно оси X и смещен в сторону от начала системы координат вдоль этой же оси примерно на длину объекта;
на главной панели инструментов выбраны система координат World (Глобальная) и кнопка Use Transform Coordinate. Center (Использовать начало координат);
щелчком на кнопке Reset All Parameters (Восстановить все параметры) установлены принятые по умолчанию значения всех параметров массива;
в счетчике Z группы Incremental (Приращения) преобразования Move (Перемещение) указано значение шага подъема ступенек, равное трем-четырем значениям толщины ступеньки (в данном примере 30 см при толщине ступеньки 10 см), а в счетчике Z преобразования Rotate (Поворот) этой же группы указано число 10;
установлен переключатель ID (Одномерный) и в счетчике Count (Число) число объектов в массиве задано равным 36.
На рис. 4. 59 показан пример двухмерного массива объектов, построенного при следующих условиях:
Рис. 4. 59. Пример двухмерного массива из 18 объектов
на главной панели инструментов выбраны система координат World (Глобальная) и кнопка Use Pivot Point Center (Использовать опорные точки объектов);
щелчком на кнопке Reset All Parameters (Восстановить все параметры) установлены принятые по умолчанию значения всех параметров массива;
в счетчике Y группы Incremental (Приращения) преобразования Move (Перемещение) указано смещение между объектами в ряду, равное 50 единицам при размере куклы по данной координате примерно 15 единиц;
установлен переключатель 2D (Двухмерный). В счетчике Count (Число) параметра 1D (Одномерный) число объектов в ряду массива задано равным 6. В счетчике Count (Число) параметра 2D (Двухмерный) число рядов задано равным 3 и указана величина смещения между рядами в счетчике X группы Incremental Raw Offsets (Сдвиги между рядами), равная 75, при размере куклы вдоль этой координаты около 25 единиц.
Все остальные параметры имеют принятые по умолчанию значения.
На рис. 4. 60 показан пример трехмерного массива объектов, построенного при следующих условиях:
Рис. 4. 60. Пример трехмерного массива из 32 объектов-самолетиков
на главной панели инструментов выбраны система координат World (Глобальная) и кнопка Use Pivot Point Center (Использовать опорные точки объектов);
щелчком на кнопке Reset All Parameters (Восстановить все параметры) установлены принятые по умолчанию значения всех параметров массива;
в счетчике X группы Incremental (Приращения) преобразования Move (Перемещение) указано смещение между объектами в ряду, равное 800 единицам при размере самолетика по данной координате примерно 350 единиц;
установлен переключатель 3D (Трехмерный). В счетчике Count (Число) параметра 1D (Одномерный) число объектов в ряду массива задано равным 4. В счетчике Count (Число) параметра 2D (Двухмерный) число рядов задано равным 4 и указана величина смещения между рядами в счетчике Y группы Incremental Raw Offsets (Сдвиги между рядами), равная 800 единицам, при размахе крыльев самолетика вдоль этой координаты около 450 единиц. В счетчике Count (Число) параметра 3D (Трехмерный) число слоев задано равным 2 и указана величина смещения между рядами в счетчике Z группы Incremental Raw Offsets (Сдвиги между рядами), также равная 800 единицам, при размере самолетика вдоль этой координаты около 225 единиц.
Все остальные параметры имеют принятые по умолчанию значения.
Содержание раздела