Студопедия

КАТЕГОРИИ:


Архитектура-(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 = instance b pos: [0,25,0]

В этой строке создается экземпляр исходного параллелепипеда, находящегося в точке начала отсчета, т.е. параллелепипед i. Экземпляр располагается в точке, указанной в приемнике команд.

2. Введите следующую строку кода:

addmodifier i (bend())

3. Выделите полученный экземпляр параллелепипеда и перейдите к панели команд Modify. Измените параметры сгибания модификатора Bend, наблюдая результаты в видовом окне.

Изменения, вносимые в параллелепипед i, сказываются и на параллелепипеде B. С другой стороны, изменения, вносимые в параллелепипед b, приводят к обновлению параллелепипеда i. Это классический пример поведения на сцене полученных экземпляров объектов. Экземпляры имеют общие с исходным объектом свойства, модификаторы, материалы и карты, а также контроллеры управления анимацией, но не преобразования, пространственные исказители или путевые имена.

4. Продолжая предыдущий пример, удалите модификатор Bend. Для этого введите в окне приемника команд следующую строку кода:

deletemodifier i 1

Функция deletemodifier воспринимает полученный экземпляр объекта в качестве первого аргумента, а индекс удаляемого модификатора — в качестве второго аргумента. Индекс модификатора, находящегося на вершине стека, равен 1 и постепенно увеличивается в направлении дна стека модификаторов.




Поделиться с друзьями:


Дата добавления: 2014-10-15; Просмотров: 446; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.013 сек.