Render.ru

Align Rotation 90 degrees

Рейтинг
47
#1
Добрый день.

Align Rotation 90 degrees
Именно так называется скрипт написанный Deniseich 0-1 в MEL для MAYA

Его суть: Без всяких панелей, поворачиваешь объект на глазок по всем трем осям (x:88 y:75 z:15), активируешь нажатием кнопки скрипт, и объект выравнивается (x:90 y:90 z:0).
Еще там можно открыть скрипт в текстовом редакторе и изменить угол выравнивания с 90 на любой другой, к примеру на 45.

Может быть у кого то из пользователей макса есть в арсенале подобный скрипт? Уж очень бы он ускорил и облегчил работу. (я находил нечто похожее, но они не ровняют к ближайшим 90 градусам, они добавляют +90 )

Если кто то может написать подобный скрипт, в качестве отправной точки могу в следующих сообщениях выложить текстовую версию MAYA-ского скрипта (думаю ни кто не будет против.)
 

Savin Denis

Модератор форума
Команда форума
Рейтинг
138
#2
Лови, думаю такой скрипт мог и сам написать.
Код:
fn setNodeWorldRotation theNode theRot = 
(
in coordsys (transmatrix theNode.transform.pos) 
theNode.rotation = inverse (theRot as quat)
)

fn rotateAlign module:90 =
(
  for obj in $selection do (
    eulerXYZ = quatToEuler2 obj.transform.rotation
    for i = 1 to 3 do (
        val = #(&eulerXYZ.x,&eulerXYZ.y,&eulerXYZ.z)[i]	
  	    valTmp = *val + ( if *val > 0 then module / 2. else  -module / 2. )		
        *val = valTmp - mod valTmp  module	    
    )
    setNodeWorldRotation obj eulerXYZ
  )
)

rotateAlign()
 
Рейтинг
47
#3
Огромнейшее спасибо!!!

Именно то, что надо.

Я к сожалению я не большой знаток Макс скрипта. В большинстве своем я качаю скрипты с scriptspot.com. Выбираю понятные мне куски кода, и потом уже из них компилирую +макро рекодер + немного Хелп.
 
Сверху