КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Экземпляр
Копия Введение В 3dsMax имеется немало элементов пользовательского интерфейса, включая панели команд, свитки, диалоговые и обычные окна. Кроме того, в пользовательском интерфейсе 3dsMax можно выполнять немало тех действий, которые обычно выполняются в видовых окнах, а также команды доступа к внешним файлам. Столь глубокая структура пользовательского интерфейса 3dsMax становится причиной значительных потерь времени при решении сложных или часто повторяющихся задач. Подобные задачи, как правило, автоматизируются полностью или частично с помощью сценариев. В MAXScript имеется достаточно функций и команд для работы практически со всеми элементами пользовательского интерфейса. Поэтому в интересах индивидуальных пользователей или студий — уделить серьезное внимание вопросам эффективного использования интерфейса 3dsMax, чтобы найти пути повышения производительности своего повседневного труда. Тема доступа к пользовательскому интерфейсу средствами MAXScript слишком обширна, чтобы охватить ее в одной главе. Поэтому в данной главе рассматриваются лишь самые важные вопросы. Получение копии, экземпляра и ссылки Одной из самых основных операций, выполняемых в видовом окне, является дублирование, или клонирование, объектов. И большую часть этих операций можно выполнять средствами MAXScript. Следует, однако, иметь в виду, что копирование и получение экземпляра распространяется не только на объекты, находящиеся на сцене, в том виде, в каком они представлены в MAXScript, но и на многие типы данных. Например, копировать можно строки, цвета, растры, значения угла поворота вокруг осей и т.д. В этом разделе речь пойдет о копировании на сцене примитивных объектов. А что Глава 3 касается копирования данных других типов, обращайтесь по этому вопросу за дополнительной справкой к справочному руководству по MAXScript. Здесь и далее предполагается, что вы знаете, как пользоваться копией, экземпляром и ссылкой в 3dsMax вручную. Синтаксис команды копирования следующий: copy <узел> Для копирования объекта выполните следующее упражнение. 1. Установите 3dsMax в исходное состояние и откройте окно приемника команд MAXScript Listener. Введите в этом окне следующую строку кода: b = box heightsegs: 8 В этой строке создается стандартный параллелепипед с 8 сегментами по высоте. 2. Введите следующую строку кода: c = copy b В этой строке создается копия параллелепипеда. Она располагается в том же месте, где и исходный параллелепипед b. 3. Введите следующую строку кода: move c [25,0,0] Анализ вновь скопированного параллелепипеда (хранящегося в переменной c) показывает, что он отделен от оригинала. Любые изменения в параллелепипеде c не оказывают влияния на параллелепипед b. У скопированного параллелепипеда имеются собственные свойства, модификаторы и прочие атрибуты, которые могут быть изменены, не оказывая влияния на оригинал или другие копии. В данном случае была отдельно вызвана функция move, чтобы можно было визуально различить оба параллелепипеда. Но обе приведенные выше строки кода можно объединить в одну следующим образом: d = copy c pos: [50,0,0] В этой строке создается копия параллелепипеда c в другом месте сцены. Синтаксис команды получения экземпляра следующий: instance <узел> Продолжите в следующем упражнении работу над предыдущим примером, но на этот раз создайте экземпляр параллелепипеда b. Интерфейс 3dsMax 1. Введите в окне приемника команд следующую строку: В этой строке создается экземпляр исходного параллелепипеда, находящегося в точке начала отсчета, т.е. параллелепипед i. Экземпляр располагается в точке, указанной в приемнике команд. 2. Введите следующую строку кода: addmodifier i (bend()) 3. Выделите полученный экземпляр параллелепипеда и перейдите к панели команд Modify. Измените параметры сгибания модификатора Bend, наблюдая результаты в видовом окне. Изменения, вносимые в параллелепипед i, сказываются и на параллелепипеде B. С другой стороны, изменения, вносимые в параллелепипед b, приводят к обновлению параллелепипеда i. Это классический пример поведения на сцене полученных экземпляров объектов. Экземпляры имеют общие с исходным объектом свойства, модификаторы, материалы и карты, а также контроллеры управления анимацией, но не преобразования, пространственные исказители или путевые имена. 4. Продолжая предыдущий пример, удалите модификатор Bend. Для этого введите в окне приемника команд следующую строку кода: deletemodifier i 1 Функция deletemodifier воспринимает полученный экземпляр объекта в качестве первого аргумента, а индекс удаляемого модификатора — в качестве второго аргумента. Индекс модификатора, находящегося на вершине стека, равен 1 и постепенно увеличивается в направлении дна стека модификаторов.
Дата добавления: 2014-10-15; Просмотров: 472; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |