Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Simple window to offset transforms from your selection
- import maya.cmds as mc
- import functools
- def ot_offset(_):
- selection = mc.ls(selection=True)
- mc.select(d=True)
- for n in selection:
- mc.setAttr(n + '.tx', mc.floatField(tx, query=True, value=True) + mc.getAttr(n + '.tx'))
- mc.setAttr(n + '.ty', mc.floatField(ty, query=True, value=True) + mc.getAttr(n + '.ty'))
- mc.setAttr(n + '.tz', mc.floatField(tz, query=True, value=True) + mc.getAttr(n + '.tz'))
- mc.setAttr(n + '.rx', mc.floatField(rx, query=True, value=True) + mc.getAttr(n + '.rx'))
- mc.setAttr(n + '.ry', mc.floatField(ry, query=True, value=True) + mc.getAttr(n + '.ry'))
- mc.setAttr(n + '.rz', mc.floatField(rz, query=True, value=True) + mc.getAttr(n + '.rz'))
- mc.setAttr(n + '.sx', mc.floatField(sx, query=True, value=True) + mc.getAttr(n + '.sx'))
- mc.setAttr(n + '.sy', mc.floatField(sy, query=True, value=True) + mc.getAttr(n + '.sy'))
- mc.setAttr(n + '.sz', mc.floatField(sz, query=True, value=True) + mc.getAttr(n + '.sz'))
- # Set window
- def close_callback(window, _):
- print "Close!", window
- mc.deleteUI(window, window=True)
- if mc.window("offsetTransform", query=True, exists=True):
- mc.deleteUI("offsetTransform", window=True)
- window = mc.window("offsetTransform", title="Offset transform Tool", widthHeight=(250, 100))
- mc.columnLayout(adjustableColumn=True)
- mc.columnLayout( columnAlign=('center'), rowSpacing=1)
- mc.text(label='Translate')
- tx = mc.floatField(value=0)
- ty = mc.floatField(value=0)
- tz = mc.floatField(value=0)
- mc.text( label='Rotate')
- rx = mc.floatField(value=0)
- ry = mc.floatField(value=0)
- rz = mc.floatField(value=0)
- mc.text( label='Scale')
- sx = mc.floatField(value=0)
- sy = mc.floatField(value=0)
- sz = mc.floatField(value=0)
- mc.button(label='Offset', command=(ot_offset))
- mc.button(label="Close", command=functools.partial(close_callback, window))
- mc.setParent('..')
- mc.showWindow(window)
Advertisement
Add Comment
Please, Sign In to add comment