Provided by: inventor-doc_2.1.5-10-18_all
NAME
SoTransformerManip — transform node with 3D interface for changing scaling, rotation, and translation
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoTransformation > SoTransform > SoTransformManip > SoTransformerManip
SYNOPSIS
#include <Inventor/manips/SoTransformerManip.h> Fields from class SoTransform: SoSFVec3f translation SoSFRotation rotation SoSFVec3f scaleFactor SoSFRotation scaleOrientation SoSFVec3f center Methods from class SoTransformerManip: SoTransformerManip() static SoType getClassTypeId() void setLocateHighlighting(SbBool onOff ) SbBool isLocateHighlighting() void unsquishKnobs() Methods from class SoTransformManip: SoDragger * getDragger() SbBool replaceNode(SoPath *p ) SbBool replaceManip(SoPath *p, SoTransform *newOne ) const Methods from class SoTransform: void pointAt(const SbVec3f &fromPoint, const SbVec3f &toPoint) void getScaleSpaceMatrix(SbMatrix &mat, SbMatrix &inv) const void getRotationSpaceMatrix(SbMatrix &mat, SbMatrix &inv) const void getTranslationSpaceMatrix(SbMatrix &mat, SbMatrix &inv) const void multLeft(const SbMatrix &mat) void multRight(const SbMatrix &mat) void combineLeft(SoTransformation *nodeOnRight) void combineRight(SoTransformation *nodeOnLeft) void setMatrix(const SbMatrix &mat) void recenter(const SbVec3f &newCenter) Methods from class SoNode: void setOverride(SbBool state) SbBool isOverride() const SoNode * copy(SbBool copyConnections = FALSE) const virtual SbBool affectsState() const static SoNode * getByName(const SbName &name) static int getByName(const SbName &name, SoNodeList &list) Methods from class SoFieldContainer: void setToDefaults() SbBool hasDefaultValues() const SbBool fieldsAreEqual(const SoFieldContainer *fc) const void copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE) SbBool set(const char *fieldDataString) void get(SbString &fieldDataString) virtual int getFields(SoFieldList &resultList) const virtual SoField * getField(const SbName &fieldName) const SbBool getFieldName(const SoField *field, SbName &fieldName) const SbBool isNotifyEnabled() const SbBool enableNotify(SbBool flag) Methods from class SoBase: void ref() void unref() const void unrefNoDelete() const void touch() virtual SoType getTypeId() const SbBool isOfType(SoType type) const virtual void setName(const SbName &name) virtual SbName getName() const
DESCRIPTION
This is a new manipulator with some improvements over the older inventor manips. It has the following features: [1] full interface for rotate, translate, and scale, [2] better feedback, [3] locate highlighting. SoTransformerManip is derived from SoTransform (by way of SoTransformManip). When its fields change, nodes following it in the scene graph rotate, scale, and/or translate. As a subclass of SoTransformManip, this manipulator also has a 3D interface to edit some of its fields. In this case, the interface edits the scaleFactor, rotation and translation fields. A manipulator differs from a dragger. When you move a dragger, no other nodes are affected. When you move an SoTransformManip, other nodes move along with it. (See the reference page for SoTransformManip). The interface for an SoTransformerManip is exactly the same as that of the SoTransformerDragger. To find out more about the interface, see the reference page for SoTransformerDragger. To find out how the manipulator uses a dragger to provide its interface, see the reference page for SoTransformManip. On screen, this manipulator will surround the objects influenced by its motion. This is because it turns on the surroundScale part of the dragger (See the reference page for SoSurroundScale)
METHODS
SoTransformerManip() Constructor. static SoType getClassTypeId() Returns type identifier for this class. void setLocateHighlighting(SbBool onOff ) SbBool isLocateHighlighting() Controls whether or not the dragger inside this manip will perform locate highlighting is used. Default is TRUE. void unsquishKnobs() Tells the dragger inside this manip to unsquish its rotation and scale knobs during the next traversal. Ordinarily, the knobs are only unsquished upon readin from file and when the mouse button is released at the end of a drag. If you want this to happen more often, then you should call this method.
FILE FORMAT/DEFAULTS
TransformerManip { translation 0 0 0 rotation 0 0 1 0 scaleFactor 1 1 1 scaleOrientation 0 0 1 0 center 0 0 0 }
SEE ALSO
SoTransformerDragger, SoTransform, SoCenterballManip, SoHandleBoxManip, SoJackManip, SoTabBoxManip, SoTrackballManip, SoTransformBoxManip, SoTransformManip SoTransformerManip(3IV)()