Здравствуйте! Такая вот задача у меня стоит. При нажатии кнопки чтоб начал создаваться бокс стандартными средствами, а потом к нему чтоб применялся определенный порядок действий. Я пишу вот так:
macros.run "Objects Primitives" "Box"
$.height = 10
потом еще несколько модификаторов
Получается бокс я рисую, но высота его потом не изменяется. А если там еще и модификаторы есть то они уже не работают, и даже бокс рисоваться не начинает, только ошибки пишет в листенере. Что-то там дописать надо видимо. Подскажите - что. А то у самого мозга не хватает.
Как сделать чтоб объект примагничивался к мышке не центром а пивотом? Знаю что там написано чтоб центром было, но пробовал заменить center на pivot. Не проканало. И чтоб таскался за курсором, и на плосоксти других объектов примагничивался (как с автогридом когда создаешь)?
Блин, и так и сяк пробовал, только ошибки сплошные. Знаю что все просто здесь, но не могу зашарить. И мануал скриптовский ничего не дал мне, или может я смотрел криво как-то.
Спасибо заранее за помощь.
В первом случае ты пытаешься задать высоту еще не созданному объекту, поскольку ты только запустил его создание.
Сначала создай бокс скриптом а потом его модифицируй его, для этого тебе прийдется написать свои методы.
Лучший вариант для управления будет написать свой геометрический плугин, для примера посмотри главу Scripted Geometry Plug-ins
Обрати там внимание на пример Cuboid, он как раз просто управляет базовым классом extends:Box
Scripted Plug-in Clauses - для детальной иформации
И по управлению мышкой:
Mouse Tool Clauses
Scripted Mouse Tools
Спасибо, что откликнулись! Что-то читаю я мануал и нифига вникнуть не могу, слишком сложно это для моего мозга. Думаю проще сделать 2 кнопки, 1-я создать бокс, а 2-я уже со всеми параметрами и модификаторами.
Слушайте, а может можно просто как то отсрочить выполнение скрипта? Просто паузу, во время которой можно делать какие-то действия, секунды 3 где-то. Щелкаешь выполнить скрипт, потом первая команда скрипта бокс стандартный, и пауза во время которой ты его рисуешь, потом остальные действия. Пробовал sleep 3, но все равно не получается, может есть еще какой аналог этой команды?
mybox=box length:20 width:20 height:20 --создаем обьект как переменную, чтобы не искать результат команды
mybox.height=100 --и через него мы можем крутить параметры (showparameters(чьи) или show(чьи) покажет какие есть)
addModifier mybox (twist angle:30) --добавляем модификатор и указываем параметры его
addModifier mybox (edit_poly()) before:1 --добавляем модификатор и указываем параметры его, указав размещение по индексу модификатора
запихнуть это можно в максроскрипт под кнопку
ловить колбеками и писать плагин скриптовой геометрии - стрельба из пушки по воробьям ИМХО (хотя возможно так проще потом)
Видите ли мне создать объект не проблема, мне проблема создать его в определенном месте. Поэтому я и думал что создам бокс на каком-нибудь другом боксе допустим, с промощью автогрида, а потом к этому боксу применится куча модификаторов из скрипта. Пытался еще использовать pickpoint(). Чтоб сначала mybox=box() а потом mybox.pos (pickpoint()), но он ставится на ноль, а я хочу чтоб сразу на объект приклеивался, как при мердже из другого файла(если включен автогрид, то объект сразу ставится на другие объекты).
Но все равно, спасибо за совет.
Про боксы это я виртуально, можно сказать "условно".
Просто в работе у меня бывает часто, что нужно делать допустим кафешку, там допустим сервировку на столах, ну парево это напрягает меня, искать в модельках тарелки рюмки салфетки, и весят они довольно много. Решил немного облегчить себе задачу, рисуешь допустим цилиндрик, щелкаешь кнопку, и вот он уже скопировался раз пять, из них один стал тарелкой, другой блюдцем с чашкой и много разной мелочи, это через edit poly, низкополигональное, т.е. можно скопировать 10000 раз. Тоже с боксами, в ванной комнате, раз кнопочной куча всяких тюбиков, баночек с кремом шампуней.
Но это надо сначала бокс нарисовать а потом щелкнуть, вот я и думал рисование бокса интегрировать в скрипт. Но так чтоб можно было его сразу на столе нарисовать а не так что он создаеться на уровне нуля а потом двигать.
Вот пример скрипта, сначала рисуешь бокс а потом щелкаешь "выполнить скрипт".
$.lengthsegs = 1
$.widthsegs =1
$.heightsegs = 1
$.length = 130
$.width =60
$.height = 10
$.name = "shampun"
pz = $.pos
за сценой кубик, его в object painter (http://www.scriptspot.com/3ds-max/scripts/objectpainter или http://www.scriptspot.com/3ds-max/scripts/advanced-painter или даже из комплекта макса Using the Object Painter Script to Add Trees в туторах) и рисуй, в твоем скрипте(ах?) стоит сделать интерфейс с кнопками Add и make_furniture - Add добавляет в массив их, а вторая переколбашивает обьекты
смотрится весело, как все на глазах меняется, но для скорости стоит вырубить обновление вьюпорта
Прошу помощи у скриптописателей! Нужен простой скрипт, который у выделенного объекта (обычно группа) помещает пивот в центр, а потом опускает по оси Z на самую нижнюю точку группы. В общем ситуация должна быть такая как у только что созданного бокса. Так же полезно было бы обнулить потом все координаты и повороты. Мне кажется тут буквально 5 строк, но я не бельмес в этом. Всё что учил, давно забыл. ПОМОГИТЕ ПОЖАЛУЙСТА!
Спасибо.
Не сложно если хоть строчку понимаешь в этом. Щас посмотрел, всё равно что и не смотрел. Потому прошу помочь готовым кодом. Просто это нужно поскорей. Сам то разберусь наверное но пройдет слишком много времени.
Вот собрал код. Он перемещает пивот куда надо. Но есть проблема. Если это группа то он перемещает пивот и у всех объектов внутри группы. Тоже самое происходит с таким кодом:
$.pos = [0,0,0]
Объекты внутри группы все скопом прыгают в ноль. Это ничего если все пивоты у них сбились вниз первым кодом, но если нет, то каша получается.
Можно ли както действовать только на основную внешнюю группу не воздействуя на внутренние объекты? Какой то фильтр нужен.
И даже пусть все пивоты сбрасываются в кучу, а потом центруются. Группа из-за этого не изменится. Но вот что делать со сбросом поворота? Тут только к группе надо в любом случае. Замечу, тут нужно не ресетить поворот
ResetTransform $ (пока только так сработало)
а установить по нулям, то есть в исходное положение объект повернуть.
Что-то у меня ничего из этого не сработало. Сброс пивота в центр и вниз я кое как (хоть и с погрешностями) сделал. Перемещение в ноль тоже получилось благодаря вышеуказаным погрешностям. А вот поворачивать все объекты в группе нельзя. Нужно только группу повернуть, обнулив все повороты. Вот с этим пока проблема.
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
Di_di_0
macros.run "Objects Primitives" "Box"
$.height = 10
потом еще несколько модификаторов
Получается бокс я рисую, но высота его потом не изменяется. А если там еще и модификаторы есть то они уже не работают, и даже бокс рисоваться не начинает, только ошибки пишет в листенере. Что-то там дописать надо видимо. Подскажите - что. А то у самого мозга не хватает.
И еще:
maxOps.autoGrid=on
move $selection (pickPoint () - $selection.center)
Как сделать чтоб объект примагничивался к мышке не центром а пивотом? Знаю что там написано чтоб центром было, но пробовал заменить center на pivot. Не проканало. И чтоб таскался за курсором, и на плосоксти других объектов примагничивался (как с автогридом когда создаешь)?
Блин, и так и сяк пробовал, только ошибки сплошные. Знаю что все просто здесь, но не могу зашарить. И мануал скриптовский ничего не дал мне, или может я смотрел криво как-то.
Спасибо заранее за помощь.
Savin Denis
Сначала создай бокс скриптом а потом его модифицируй его, для этого тебе прийдется написать свои методы.
Лучший вариант для управления будет написать свой геометрический плугин, для примера посмотри главу Scripted Geometry Plug-ins
Обрати там внимание на пример Cuboid, он как раз просто управляет базовым классом extends:Box
Scripted Plug-in Clauses - для детальной иформации
И по управлению мышкой:
Mouse Tool Clauses
Scripted Mouse Tools
Di_di_0
Слушайте, а может можно просто как то отсрочить выполнение скрипта? Просто паузу, во время которой можно делать какие-то действия, секунды 3 где-то. Щелкаешь выполнить скрипт, потом первая команда скрипта бокс стандартный, и пауза во время которой ты его рисуешь, потом остальные действия. Пробовал sleep 3, но все равно не получается, может есть еще какой аналог этой команды?
Savin Denis
Di_di_0
ASK'R
mybox.height=100 --и через него мы можем крутить параметры (showparameters(чьи) или show(чьи) покажет какие есть)
addModifier mybox (twist angle:30) --добавляем модификатор и указываем параметры его
addModifier mybox (edit_poly()) before:1 --добавляем модификатор и указываем параметры его, указав размещение по индексу модификатора
запихнуть это можно в максроскрипт под кнопку
ловить колбеками и писать плагин скриптовой геометрии - стрельба из пушки по воробьям ИМХО (хотя возможно так проще потом)
Di_di_0
Но все равно, спасибо за совет.
ASK'R
конечная цель-то какая?
интерактивный скрипт расстановки боксов? может проще через рисование тогда? или разнообразными скаттерами?
Di_di_0
Просто в работе у меня бывает часто, что нужно делать допустим кафешку, там допустим сервировку на столах, ну парево это напрягает меня, искать в модельках тарелки рюмки салфетки, и весят они довольно много. Решил немного облегчить себе задачу, рисуешь допустим цилиндрик, щелкаешь кнопку, и вот он уже скопировался раз пять, из них один стал тарелкой, другой блюдцем с чашкой и много разной мелочи, это через edit poly, низкополигональное, т.е. можно скопировать 10000 раз. Тоже с боксами, в ванной комнате, раз кнопочной куча всяких тюбиков, баночек с кремом шампуней.
Но это надо сначала бокс нарисовать а потом щелкнуть, вот я и думал рисование бокса интегрировать в скрипт. Но так чтоб можно было его сразу на столе нарисовать а не так что он создаеться на уровне нуля а потом двигать.
Вот пример скрипта, сначала рисуешь бокс а потом щелкаешь "выполнить скрипт".
$.lengthsegs = 1
$.widthsegs =1
$.heightsegs = 1
$.length = 130
$.width =60
$.height = 10
$.name = "shampun"
pz = $.pos
copy $ isSelected😮n
$.name = "2shampun"
move $ [0, 150, 0]
copy $ isSelected😮n
$.name = "3shampun"
move $ [0, 150, 0]
copy $ isSelected😮n
$.name = "4shampun"
move $ [0, 100, 0]
copy $ isSelected😮n
$.name = "5shampun"
move $ [65, -160, 0]
copy $ isSelected😮n
$.name = "6shampun"
move $ [0, -160, 0]
Cylinder smooth😮n heightsegs:1 capsegs:1 sides:12 height:130 radius:30 isSelected😮n
$.pos = pz
move $ [70, -70, 0]
$.name = "stakan"
copy $ isSelected😮n
$.name = "krem"
move $ [0, 430, 0]
$.radius = 40
$.height = 30
select $shampun
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 4
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{2}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 271.313
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 7.29337
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 0
$.modifiers[#Edit_Poly].bevelOutline = 0
$.modifiers[#Edit_Poly].bevelHeight = 37.9255
$.modifiers[#Edit_Poly].bevelOutline = -14.5867
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3.64668
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 2
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
$.modifiers[#Edit_Poly].SetSelection #Edge #{}
$.modifiers[#Edit_Poly].Select #Edge #{40}
$.modifiers[#Edit_Poly].Select #Edge #{38}
$.modifiers[#Edit_Poly].ButtonOp #ConnectEdges
$.modifiers[#Edit_Poly].SetOperation #ChamferEdge
$.modifiers[#Edit_Poly].chamferEdgeAmount = 17.22
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 4
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{24}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3.64668
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 25.5268
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 4.37602
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
modPanel.addModToSelection (TurboSmooth ()) ui😮n
$.modifiers[#TurboSmooth].iterations = 2
actionMan.executeAction 0 "369"
select $2shampun
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 4
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{2}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 230
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 7.29337
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 0
$.modifiers[#Edit_Poly].bevelOutline = 0
$.modifiers[#Edit_Poly].bevelHeight = 20
$.modifiers[#Edit_Poly].bevelOutline = -10
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3.64668
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 2
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
$.modifiers[#Edit_Poly].SetSelection #Edge #{}
$.modifiers[#Edit_Poly].Select #Edge #{40}
$.modifiers[#Edit_Poly].Select #Edge #{38}
$.modifiers[#Edit_Poly].ButtonOp #ConnectEdges
$.modifiers[#Edit_Poly].SetOperation #ChamferEdge
$.modifiers[#Edit_Poly].chamferEdgeAmount = 20
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 4
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{24}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3.64668
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 40
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 4.37602
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
modPanel.addModToSelection (TurboSmooth ()) ui😮n
$.modifiers[#TurboSmooth].iterations = 2
actionMan.executeAction 0 "369"
select $3shampun
$.length = 110
$.width = 50
$.height =10
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 4
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{2}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 200
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 7.29337
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 0
$.modifiers[#Edit_Poly].bevelOutline = 0
$.modifiers[#Edit_Poly].bevelHeight = 20
$.modifiers[#Edit_Poly].bevelOutline = -10
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3.64668
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3.64668
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 40
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 4.37602
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
modPanel.addModToSelection (TurboSmooth ()) ui😮n
$.modifiers[#TurboSmooth].iterations = 2
select $4shampun
$.length = 60
$.width = 60
$.height =3
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 4
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{2}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 80
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 0
$.modifiers[#Edit_Poly].bevelOutline = -10
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 0
$.modifiers[#Edit_Poly].bevelOutline = 10
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 40
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.addModToSelection (TurboSmooth ()) ui😮n
$.modifiers[#TurboSmooth].iterations = 2
select $5shampun
$.length = 60
$.width = 30
$.height =3
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 4
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{2}
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 70
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 0
$.modifiers[#Edit_Poly].bevelOutline = -10
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 30
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 3
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.addModToSelection (TurboSmooth ()) ui😮n
$.modifiers[#TurboSmooth].iterations = 2
select $6shampun
$.length = 80
$.width = 80
$.height =80
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 2
$.modifiers[#Edit_Poly].SetSelection #Edge #{}
$.modifiers[#Edit_Poly].Select #Edge #{1..12}
$.modifiers[#Edit_Poly].SetOperation #ChamferEdge
$.modifiers[#Edit_Poly].chamferEdgeAmount = 3
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 4
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{2}
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 3
$.modifiers[#Edit_Poly].bevelOutline = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 30
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelOutline = -3
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
select $stakan
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 4
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{14}
$.modifiers[#Edit_Poly].SetOperation #Inset
$.modifiers[#Edit_Poly].insetAmount = 5.26987
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = -124.896
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
modPanel.addModToSelection (Taper ()) ui😮n
$.modifiers[#Taper].amount = 0.59
select $krem
modPanel.addModToSelection (Edit_Poly ()) ui😮n
subobjectLevel = 2
$.modifiers[#Edit_Poly].SetSelection #Edge #{}
$.modifiers[#Edit_Poly].Select #Edge #{1, 5, 8, 11, 14, 17, 20, 23, 26, 29, 32, 35}
$.modifiers[#Edit_Poly].Select #Edge #{3, 7, 10, 13, 16, 19, 22, 25, 28, 31, 34, 36}
$.modifiers[#Edit_Poly].SetOperation #ChamferEdge
$.modifiers[#Edit_Poly].chamferEdgeAmount = 3
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 4
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
$.modifiers[#Edit_Poly].SetSelection #Face #{}
$.modifiers[#Edit_Poly].Select #Face #{14}
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 3
$.modifiers[#Edit_Poly].bevelOutline = 3
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #ExtrudeFace
$.modifiers[#Edit_Poly].extrudeFaceHeight = 20
$.modifiers[#Edit_Poly].Commit ()
$.modifiers[#Edit_Poly].SetOperation #Bevel
$.modifiers[#Edit_Poly].bevelHeight = 3
$.modifiers[#Edit_Poly].bevelOutline = -3
$.modifiers[#Edit_Poly].Commit ()
subobjectLevel = 0
modPanel.setCurrentObject $.modifiers[#Edit_Poly]
ASK'R
смотрится весело, как все на глазах меняется, но для скорости стоит вырубить обновление вьюпорта
kolts
Di_di_0
Paul_Winex
Спасибо.
Paul_Winex
Savin Denis
Глава Align Pivot and Reset Transform Methods
Paul_Winex
Paul_Winex
Объекты внутри группы все скопом прыгают в ноль. Это ничего если все пивоты у них сбились вниз первым кодом, но если нет, то каша получается.
Можно ли както действовать только на основную внешнюю группу не воздействуя на внутренние объекты? Какой то фильтр нужен.
Paul_Winex
а установить по нулям, то есть в исходное положение объект повернуть.
Savin Denis
хм посмотрел кнопки сброса трансформации у меня в 2010 вобще не работают
так надежней будет
Paul_Winex