Group Move Tool
A simple and fast tool for moving/rotating/scaling a group of objects.
- Shift and rotate entire poses as a group.
- Works with virtually any object or control, even in complex hierarchies.
- Use scale mode to shift controls closer and farther apart.
- Relocate pivots on the fly.
- Tool will update when you scrub or flip between frames.
- Save “ebLabs_groupMoveTool.py” to your maya scripts folder.
- Add the following command and icon to a python hotkey (or shelf button).
import sys, os
from maya import cmds
path = os.path.normpath(os.path.join(cmds.internalVar(userAppDir=True), 'scripts'))
if not path in sys.path:
- python script, tested with Maya 2012+, Linux, Windows and Mac
- v.2016-11-28, [lastupdated]
How To Use
|(1). Select your objects.||Select one or more control(s)/object(s) in your scene.|
|(2). Activate Tool||Assign the Group Move Tool command to a hotkey, or even a shelf button.|
|(3). Move/Rotate/Scale||This is the main function of the tool. A temporary control is created, it appears as a bounding box around the objects you selected. When you move/scale/rotate this Group Move Node, it will update the all of the objects that are connected to it. For more technical users, please see the more detailed description below.|
|(4). Finish Up||When you are finished using the Group Move Tool, simply click in your viewport to clear the selection, this will reselect all of your objects/control(s).|
|Setting Keys||If you already have keys on your controls, keys will be set using autokey, ie when changes are made. If you haven’t added any keys to your objects then none will be added.|
|Change/Move Pivots||Hit the ‘insert’ key to move the pivot anywhere you’d like. Now any rotation/scale will happen from this point.|
|Scrub the timeline||Changing the current time will update the Group Move Tool so you can keep working. There is a ‘Key Reference’ channel that will give you a visual indicator of where your keyframes are.|
|Try Scale||Scaling will actually contract/expand the position of all the objects connected to the Group Move Tool towards the pivot. The Group Move Tool only affects position and rotation, but this is a handy way to use the scale in a different way.|
|Translate X/Y/Z||Reset this back to zero and the Group Move Node will go back to where it started.|
|Rotate X/Y/Z||Reset this back to zero and the Group Move Node will go back to where it started.|
|Scale X/Y/Z||The Group Move Tool wont scale your objects, but you can use scale to expand/contract the positions of all the connected objects from the pivot point.|
|Key Reference||Check out the timeline to see the keyframes from all of the objects connected to the Group Move Node. This is just for your reference, and has no effect on anything.|
How does it work?
Why not use constraints?
- Constraints add extra nodes and connections to the objects in your scene. This is something I wanted to avoid. With the Group Move Tool, all of the updates are handled by script jobs in the background. After you are finished with the tool, there is no remaining ‘garbage’ attached to your character. Clean, simple and easy to use.
What about double transformations?
- The Group Move Tool is optimized to check through and take into account hierarchies and dependencies. On top of this, all positions are double checked that they are accurate. This all gets calculated on the fly and is generally quite fast.
__version__ = ‘2016.11.28’
- Bug fixes
- Selection Falloff Beta
Jean-Renaud Gauthier – http://www.turboatomic.com/