Render.ru

deleteModifier

Wats

Знаток
Рейтинг
25
#1
Здравствуйте уважаемые. Не могли бы вы подсказать как можно удалить модификатор по имени. Допустим у меня 70 объектов и в каждом есть MeshSmooth, так вот его мне и нужно удалить. Знаю что можно удалять по индексу, например
--выделяем нужные объекты
for obj in selection do
deleteModifier obj и номер мода сверху по стеку

так вот в том и беда что MeshSmooth у меня в объектах в разброс и поэтому нужно удалять по имени или классу что ли...
deleteModifier <node> <modifier_or_index> - в хелпе написано так, а что здесь значит modifier - догнать не могу :(
Заранее благодарен.
 

Wats

Знаток
Рейтинг
25
#2
Оказывается можно даже так, без цикла:
deleteModifier $ и номер мода сверху по стеку
Но как по имени не знаю. :(
 

RENDERATOR

Активный участник
Рейтинг
15
#3
Например вот так:

Код:
deleteModifier $ $.modifiers["ИмяМодификатора"]
или так

Код:
deleteModifier $ $.ИмяМодификатора
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#4
Включи Макрорекордер и выбири нужный модификатор, и смотри в листенере систаксис команды
Поначалу хорошо помогает, если нет то смотрим хелп
 

Wats

Знаток
Рейтинг
25
#5
Например вот так:


deleteModifier $ $.modifiers["ИмяМодификатора"]


или так


deleteModifier $ $.ИмяМодификатора
Вот спасибо! Как раз то что нужно! Делаю вот так:
for obj in selection do
deleteModifier obj obj.meshsmooth
- все работает! Кстати оказывается еще вот так можно:
for obj in selection do
deleteModifier obj obj.modifiers[#MeshSmooth]
- имя мода не в кавычках, а решетка перед ним. :rolleyes:
Включи Макрорекордер и выбири нужный модификатор, и смотри в листенере систаксис команды
Он у меня всегда включен :), блин не посмотрел сразу как на выделение мода он реагирует, а там как раз то что нужно было - $.modifiers[#MeshSmooth] , тока на удаление смотрел - а оно там по индексу :oops:
Спасибо!
 
Сверху