For all draggers subclassed from SoDragger( C++ | Java | .NET ), the user employs a click-drag-release motion with the mouse. Table 17.1, “Uses of Draggers” indicates the use of each dragger subclassed from SoDragger( C++ | Java | .NET ). For example, the drag-point dragger responds to dragging by translating in three dimensions.
Subclasses of SoDragger( C++ | Java | .NET ) fall into two general categories: simple draggers and compound draggers. In general, simple draggers perform only one operation, such as a scale or a translation. Compound draggers perform several operations and are composed of multiple simple draggers. Simple draggers can be used in three ways:
You can connect the field of a simple dragger to other fields or to engines in the scene graph. This is a simple way to set up dependencies within the scene graph.
You can write callback functions that are performed when interaction starts or finishes, whenever the mouse moves, or when the value in the dragger's field changes.
You can use the simple draggers as building blocks to create more complex draggers.
Compound draggers are similar to simple draggers, except that they have more parts because they are comprised of two or more draggers. The SoTransformBoxDragger( C++ | Java | .NET ), for example, uses a scale dragger, three rotators, and six translators.