- Рейтинг
- 47
Добрый день.
Я не пользуюсь модификаторами турбо и меш смус. Предпочитаю функцию у Editable_Poly – surfSubdivide.
Вот скрипт, которым я пользуюсь:
(
if classof $ == Editable_Poly
then
(
macros.run "Editable Polygon Object" "EPoly_NURMS_Toggle"
$.iterations = 2
$.showCage = off
$.isolineDisplay = off
)
)
Он действует на один объект, и только в случае если тот Editable_Poly. Остальные игнорирует.
Цель:
Хочу сделать скрипт который при выделении большого количества разных объектов, включал и выключал у Editable_Poly сглаживание с настройками .iterations = 2 .showCage = off .isolineDisplay = off. В случае если у нескольких выделенных объектах включено а у остальных нет, при первом запуске скрипта у все удалял, а при повторном включал сглаживание.
Процесс:
Вот код который работает
for o in $ where hasProperty o "surfSubdivide" do o.surfSubdivide = off или on
Но:
Во первых – для него нужно 2 кнопки (ON и OFF)
Во вторых – он включает родные настройки объекта (1 уровень сглаживания и т.д.)
Создал вот такой код:
(
for i in selection do
(
check_Subdiv = i.surfSubdivide
if check_Subdiv == off
then
(
$.surfSubdivide = on
$.iterations = 2
$.showCage = off
$.isolineDisplay = off
)
else
(
$.surfSubdivide = off
$.iterations = 2
$.showCage = off
$.isolineDisplay = off
)
)
)
Странно, но код работает исключительно с нечетным количеством объектов.
Выделяешь 2 объекта Макс Лисинер отвечает – OK, но ничего не делает.
При попадании в выделение объекта Mesh выдает - -- Unknown property: "surfSubdivide" in $Editable_Mesh:Box11
Я изменил первую текстовую строчку - for i in selection where hasProperty i "surfSubdivide" do
По идеи он:
1 строка – определят объекты в которых есть функция surfSubdivide (то есть Editable_Poly )
2 - Проверяет включена ли эта функция
3 - если у всех объектов эта функция не включена, отправляет в else и выключает ее.
При повторном запуске скрипта у всех объектов Editable_Poly включает сглаживание.
Ура, Ура, Ура.
Но на самом деле не черта не работает!!!
Все так же срабатывает при выделение нечетного количества объектов.
И выдает -- Unknown property: "surfSubdivide" in $Editable_Mesh:Box11 (если в выделении есть Mesh)
Помогите пожалуйста.
Я не пользуюсь модификаторами турбо и меш смус. Предпочитаю функцию у Editable_Poly – surfSubdivide.
Вот скрипт, которым я пользуюсь:
(
if classof $ == Editable_Poly
then
(
macros.run "Editable Polygon Object" "EPoly_NURMS_Toggle"
$.iterations = 2
$.showCage = off
$.isolineDisplay = off
)
)
Он действует на один объект, и только в случае если тот Editable_Poly. Остальные игнорирует.
Цель:
Хочу сделать скрипт который при выделении большого количества разных объектов, включал и выключал у Editable_Poly сглаживание с настройками .iterations = 2 .showCage = off .isolineDisplay = off. В случае если у нескольких выделенных объектах включено а у остальных нет, при первом запуске скрипта у все удалял, а при повторном включал сглаживание.
Процесс:
Вот код который работает
for o in $ where hasProperty o "surfSubdivide" do o.surfSubdivide = off или on
Но:
Во первых – для него нужно 2 кнопки (ON и OFF)
Во вторых – он включает родные настройки объекта (1 уровень сглаживания и т.д.)
Создал вот такой код:
(
for i in selection do
(
check_Subdiv = i.surfSubdivide
if check_Subdiv == off
then
(
$.surfSubdivide = on
$.iterations = 2
$.showCage = off
$.isolineDisplay = off
)
else
(
$.surfSubdivide = off
$.iterations = 2
$.showCage = off
$.isolineDisplay = off
)
)
)
Странно, но код работает исключительно с нечетным количеством объектов.
Выделяешь 2 объекта Макс Лисинер отвечает – OK, но ничего не делает.
При попадании в выделение объекта Mesh выдает - -- Unknown property: "surfSubdivide" in $Editable_Mesh:Box11
Я изменил первую текстовую строчку - for i in selection where hasProperty i "surfSubdivide" do
По идеи он:
1 строка – определят объекты в которых есть функция surfSubdivide (то есть Editable_Poly )
2 - Проверяет включена ли эта функция
3 - если у всех объектов эта функция не включена, отправляет в else и выключает ее.
При повторном запуске скрипта у всех объектов Editable_Poly включает сглаживание.
Ура, Ура, Ура.
Но на самом деле не черта не работает!!!
Все так же срабатывает при выделение нечетного количества объектов.
И выдает -- Unknown property: "surfSubdivide" in $Editable_Mesh:Box11 (если в выделении есть Mesh)
Помогите пожалуйста.