cgmToolbox 2.0

New toolbox rewrite in 2017.

Creative Commons License

Tool builds may be found here :

To get access to more stuff and provide more feedback we have a Slack Channel. To join, ping us on our facebook page and let us know.

Current requirements are:

  • Maya 2010+
  • OS:
    • Windows  – no issues reported
    • Mac – no issues reported
    • Linux – need more feedback
Current contents include:
  • cgmTools
  • red9 – From Mark Jackson. His metadata implementation is at the core of how we do things.
  • Additional tools from:
    • Justin Barrett
    • Michael Comet
    • John Doublestein
    • Scott Englert
    • Morgan Loomis
    • Hamish McKenzie
    • Brendan Ross
    • Bohdon Sayre

Tools and options are accessed in a couple of ways.

General Concepts

  • Shared Menus – Setup both the Marking Menu and the Top Menu to share many of the same subMenus. As such, it makes it easy to push new tools to multiple places.
  • RayCasting — Something we started playing with for casting curves for rig building. Turns out casting rays in scenes can be used for lots of useful things.
    • Cast — Each time the screen is clicked, a ray is cast and the specified post actions occur
    • Drag — While the left click is held down, rays are continuously cast
    • Cast Targets — If no targets are in the buffer or the mode is not set to xyzPlane, all visible mesh or nurbs shapes in the scene are eligible targets.
    • Dropping — The default hotkey for dropping a tool is ‘q’. For certain functions, final actions won’t happen until the tool is dropped.
    • Repeat — The default repeat function ‘g’ key works fine with most processes.
    • Locators — Locators created while casting will store special information on them. A message link to the mesh hit which generate that loc and a json dictionary attribute with the shape normal of that hit as well as a hit index for the cast factory to use for other purposes. This is most typically used for finalization creation processes.
  • Options – Many of our tools share options in the form of optionVar’s in Maya. As it can be tedious to change options via the marking menu, you can access options via a gui as well.
    • Top Menu>CGM>snap>{Options}
    • MarkingMenu>Options>Option UI
  • Buffers – These are optionVar derived object lists that may be maintained between maya sessions. There are controled via the cgmMeta.OptionVar metaclass.
  • Context – What context functions happen based on selection. For example if you have scene wide context and set joint axis to on. All joints in scene will have their joint axis turned on
    • ‘*’ in menu item name — This means this menu item is contextual. It works off the context mode you have the marking menu in.