2015年12月21日月曜日

選択したオブジェクトのバウンディングボックスサイズのCubeを作るスクリプト(仮)

選択したオブジェクトのバウンディングボックスサイズのCubeを作るスクリプト。
まだちゃんと検証していないため、きちんと動かないかもしれないので注意!

#create boundingbox script
import maya.cmds as cmds

#select object
sel = cmds.ls(sl=1)

#get rotate value selected object
rot = cmds.xform(sel,q=1,ws=1,ro=1)

#get pivot value selected object
piv = cmds.xform(sel,q=1,ws=1,rp=1)

#rotate value (0,0,0) seleected object
cmds.xform(sel,ro=(0,0,0))

#create boundingbox selected object
x1, y1, z1, x2, y2, z2 = cmds.exactWorldBoundingBox(sel)
cube = cmds.polyCube()[0]

xc = (x2 + x1) / 2.0
yc = (y2 + y1) / 2.0
zc = (z2 + z1) / 2.0

xw = x2 - x1
yw = y2 - y1
zw = z2 - z1

cmds.move(xc, yc, zc, cube)
cmds.scale(xw, yw, zw, cube)

#change cube pivot points
cmds.xform(cube,ws=1,rp=piv)

#rotate selected object and boundingbox
cmds.xform(sel,ro=rot)
cmds.xform(cube,ro=rot)

0 件のコメント:

コメントを投稿