API Guide > Manipulators >

# Introduction to Manipulators

A manipulator is a node that draws itself using 3D graphical elements, which respond to user events. Manipulators translate the user events into values that are used for modifying the attribute values of other nodes in a scene.

The attribute values of a node can be changed through ways such as the Channel Box and Graph Editor, but manipulators provide a more intuitive way for changing attribute values. The manipulator translates modifications to the visual controls into values that are applied directly to the node attributes. Unlike the other dependency graph nodes, a manipulator modifies the attribute values directly and not through the standard plug and connection mechanism.

Manipulators can also be used as an interactive tool to manipulate objects or custom nodes in a scene. Using custom manipulators, you can create different types of custom tools such as modeling or rigging tools.

You can use manipulators in the following ways:

- Create a manipulator on any node in the current scene at any time.
- Create and assign a manipulator for a specific type of object.
- Create a context tool and associate the manipulator to the context tool. Whenever the context tool is active, the manipulator becomes active and ready for use.

NoteManipulators are only active when the Show Manipulator Tool or the associated context is active, and the corresponding object is selected.

Manipulators are not visible in the Hypergraph or Outliner even though they are nodes and they are not added to the Maya selection list. Additionally, their attributes are not accessible from MEL or the Attribute Editor and they are not written to file.

Manipulators can operate on data types that range from integer and floating point values to matrix data and they can operate on one or more attribute values at the same time.