Добрый день! подскажите пожалуйста, можно ли автоматизировать накидывание модификаторов в максе ?
Переписал с МаксЛистнера нужные строки
actionMan.executeAction 0 "40021" -- Selection: Select All
macros.run "Modifier Stack" "Convert_to_Poly"
modPanel.addModToSelection (Normalmodifier ()) ui:on
modPanel.addModToSelection (Normalmodifier ()) ui:on
modPanel.addModToSelection (smooth ()) ui:on
$Box001.modifiers[#Smooth].smoothingBits = 1
maxOps.CollapseNode $Teapot001 off
maxOps.CollapseNode $Teapot002 off
maxOps.CollapseNode $Box001 off
И все бы ничего но я хотел сделать УНИВЕРСАЛЬНЫЙ скрипт а не для 2х чайников и бокса. Мб кто ни будь поможет мне с этой оказией ?) или хотя бы сказать возможно это без "программистских" всех этих приколов с функциями и массивами и определениями имен ?
>"программистских" всех этих приколов с функциями и массивами
MaxScript настолько ужасен, что мне с ним все эти годы было сложно даже имея за плечами образование инженер-программиста. Не из за его сложности, а из за... Его кринжовости?..
Ближе к делу.
Автоматизировать накидывание модификаторов, конечно, можно:
for obj in (selection as array) do --В скриптах макс выделенный массив воспринимает только через selection, но не через $
(obj.modifiers[#TurboSmooth].iterations = 2) --Накидываем турбосмус и сразу же на него 2 итарации, чтоб самому не щёлкать
-- Выделенное конвертирует в поли и ставим значение weld на православные 0.001 во славу автоматизации
for obj in (selection as array) do
(
convertToPoly obj
obj.weldThreshold = 0.001
)
Вообще, держи-ка мои простенькие скрипты для ознакомления - мож что полезного надёргаешь, как и я в своё время.
Игорь Видлацкий (Stalker_Lom)>Вообще, держи-ка мои простенькие скрипты для ознакомления - мож что полезного надёргаешь, как и я в своё время.
Спасибо дорогой! Поизучаю обязательно. Я сам тоже колледж на программиста закончил, но что-то сложней табличек экселя не люблю от слова совсем. Хотя иной раз встречаются интересные задачки требующие несколько итераций в самих функциях. Во общем иногда интересно, но проще как по мне оставить все это нейросеткам))
Кароч код получился таким, и без цикла for необойтись эх)))
UPD:Код если кому интересно получился такой. Пригодитя для "стоков"=)
Приветствую! Может кто знает как побороть некорректную работу стандартного .selectOverlappedFaces() В некоторых случаях он перестает видит шеллы, особенно если они мелкие и на UV-холсте были отодвинуты далеко от центра. Может есть аналоги или условный регулировщик точности просчета? Я пол года назад писал в техподдержку автодеск, но ничего за это время не изменилось
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
k3b3
Для примера нужно выделить одинаковый мод Edit_poly у двух выделенных объектов.
Если мы на двух объектах создаем общие модификаторы #edit_poly, то после выполнения выделяется только 1 объект
DASLON
Vova
Переписал с МаксЛистнера нужные строки
И все бы ничего но я хотел сделать УНИВЕРСАЛЬНЫЙ скрипт а не для 2х чайников и бокса. Мб кто ни будь поможет мне с этой оказией ?) или хотя бы сказать возможно это без "программистских" всех этих приколов с функциями и массивами и определениями имен ?
Игорь Видлацкий (Stalker_Lom)
MaxScript настолько ужасен, что мне с ним все эти годы было сложно даже имея за плечами образование инженер-программиста. Не из за его сложности, а из за... Его кринжовости?..
Ближе к делу.
Автоматизировать накидывание модификаторов, конечно, можно:
for obj in (selection as array) do --В скриптах макс выделенный массив воспринимает только через selection, но не через $ (obj.modifiers[#TurboSmooth].iterations = 2) --Накидываем турбосмус и сразу же на него 2 итарации, чтоб самому не щёлкать-- Выделенное конвертирует в поли и ставим значение weld на православные 0.001 во славу автоматизации for obj in (selection as array) do ( convertToPoly obj obj.weldThreshold = 0.001 )Вообще, держи-ка мои простенькие скрипты для ознакомления - мож что полезного надёргаешь, как и я в своё время.Вложения
Vova
Спасибо дорогой! Поизучаю обязательно. Я сам тоже колледж на программиста закончил, но что-то сложней табличек экселя не люблю от слова совсем. Хотя иной раз встречаются интересные задачки требующие несколько итераций в самих функциях. Во общем иногда интересно, но проще как по мне оставить все это нейросеткам))
Кароч код получился таким, и без цикла for необойтись эх)))
UPD:Код если кому интересно получился такой. Пригодитя для "стоков"=)
actionMan.executeAction 0 "40021" -- Selection: Select All selection.pos = [0,0,0] selection.rotation = quat 0 0 0 1 macros.run "Modifier Stack" "Convert_to_Poly" modPanel.addModToSelection (Normalmodifier ()) ui:on modPanel.addModToSelection (Normalmodifier ()) ui:on modPanel.addModToSelection (smooth ()) ui:on for obj in selection do ( local SmoothMod = smooth() SmoothMod.smoothingBits = 1 addModifier obj SmoothMod collapseStack obj ) macros.run "PolyTools" "ResetXForm"Виталий К (VxSK98)