Как конкретно эту задачу решить не знаю (может быть скрипт написать какой-то), но если объектов, для которых это надо делать мало, то можно попробовать использовать Named Selection Set. Создать для данного объекта Selection Set источников его освещающих.
мне в общем-то надо по разу для модели выделить эти источники - для подготовки к припечке. и потом больше их выделять не надо. сеты создавать предварительно будет дольше, чем один раз выделить источники. у сетов в принципе есть недостаток, если источник обновляется.
но спасибо за советы..
for i in $objects where superclassOf i == light do
(
for n in $selection do
(
-- search and find object in <Exclude> list:
try(
if findItem i.ExcludeList n == 0 do append objArr i
)catch()
-- search and find object in <Include> list:
try(
if findItem i.IncludeList n != 0 do append objArr i
)catch()
);
);
select objArr
Скрипт также работает с множеством объектов и определяет освещает ли ИС объект не только по Exclude списку но и по Include списку в ИС-е..
Как его запустить:
1. Меню MaxScript->New Script;
2. В появившееся окно вставляем текс скрипта;
3. Жмем Ctrl+E или File->Evaluate All;
По желанию скрипт можно превратить в кнопку - выделив текст и перетащив его на любой тоолбар..
Спасибо, Гудман!
У тебя сейчас ищется в двух списках сразу. То есть если источник освещает объекты из своего exclude листа, но в его include листе есть мой объект, то такой источник тоже выделяется.
Гудман, все равно большое спасибо, ты реально много чем помог. 🙂
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
Sergey Shevelev
Alex7
ShMon
Sergey Shevelev
но спасибо за советы..
GoodMan
GoodMan
Как его запустить:
1. Меню MaxScript->New Script;
2. В появившееся окно вставляем текс скрипта;
3. Жмем Ctrl+E или File->Evaluate All;
По желанию скрипт можно превратить в кнопку - выделив текст и перетащив его на любой тоолбар..
Sergey Shevelev
У тебя сейчас ищется в двух списках сразу. То есть если источник освещает объекты из своего exclude листа, но в его include листе есть мой объект, то такой источник тоже выделяется.
Гудман, все равно большое спасибо, ты реально много чем помог. 🙂
GoodMan
-- search and find object in <Include> list:
--try(
--if findItem i.IncludeList n != 0 do append objArr i
--)catch()
Такие строчки будут восприниматься как комментарий и не учитываться при интерпретации скрипа..
Sergey Shevelev
Полезный скрипт 🙂