SoTransformerManip(3IV)
SoTransformerManip (SoTransformerManip) - transform node with 3D interface for changing scaling, rotation, and translation
Showing IRIX 6.5.30 (default release). Added in IRIX 6.5.22.
NAME SoTransformerManip (SoTransformerManip) - transform node with 3D interface for changing scaling, rotation, and translation INHERITS FROM SoBase > SoFieldContainer > SoNode > SoTransformation > SoTransform > SoTransformManip > SoTransformerManip SYNOPSIS #include <Inventor_c/manips/SoTransformerManip.h> Fields from class SoTransform: SoSFVec3f translation SoSFRotation rotation SoSFVec3f scaleFactor SoSFRotation scaleOrientation SoSFVec3f center Functions from class SoTransformerManip: SoTransformerManip * SoTransformerManipCreate() SoType SoTransformerManipGetClassTypeId() void SoTransformerManipSetLocateHighlighting(SoTransformerManip *this, SbBool onOff ) SbBool SoTransformerManipIsLocateHighlighting(SoTransformerManip *this) void SoTransformerManipUnsquishKnobs(SoTransformerManip *this) Functions from class SoTransformManip: SoDragger * SoTransformerManipGetDrag(SoTransformerManip *this) SbBool SoTransformerManipReplaceNode(SoTransformerManip *this, SoPath *p ) SbBool SoTransformerManipReplaceManip(const SoTransformerManip *this, SoPath *p, SoTransform *newOne ) Functions from class SoTransform: void SoTransformerManipPtAt(SoTransformerManip *this, const SbVec3f *fromPoint, const SbVec3f *toPoint) void SoTransformerManipGetScaleSpaceMx(const SoTransformerManip *this, SbMatrix *mat, SbMatrix *inv) void SoTransformerManipGetRotSpaceMx(const SoTransformerManip *this, SbMatrix *mat, SbMatrix *inv) void SoTransformerManipGetXlateSpaceMx(const SoTransformerManip *this, SbMatrix *mat, SbMatrix *inv) void SoTransformerManipMultLeft(SoTransformerManip *this, const SbMatrix *mat) void SoTransformerManipMultRight(SoTransformerManip *this, const SbMatrix *mat) void SoTransformerManipCombineLeft(SoTransformerManip *this, SoTransformation *nodeOnRight) void SoTransformerManipCombineRight(SoTransformerManip *this, SoTransformation *nodeOnLeft) void SoTransformerManipSetMx(SoTransformerManip *this, const SbMatrix *mat) void SoTransformerManipRecenter(SoTransformerManip *this, const SbVec3f *newCenter) Functions from class SoNode: void SoTransformerManipSetOverride(SoTransformerManip *this, SbBool state) SbBool SoTransformerManipIsOverride(const SoTransformerManip *this) SoNode * SoTransformerManipCopy(const SoTransformerManip *this, SbBool copyConnections = FALSE) SbBool SoTransformerManipAffectsState(const SoTransformerManip *this) SoNode * SoTransformerManipGetByName(const char *name) int SoTransformerManipGetByNameList(const char *name, SoNodeList *list) Functions from class SoFieldContainer: void SoTransformerManipSetToDflts(SoTransformerManip *this) SbBool SoTransformerManipHasDfltVals(const SoTransformerManip *this) SbBool SoTransformerManipFldsAreEq(const SoTransformerManip *this, const SoFieldContainer *fc) void SoTransformerManipCopyFieldVals(SoTransformerManip *this, const SoFieldContainer *fc, SbBool copyConnections = FALSE) SbBool SoTransformerManipSet(SoTransformerManip *this, const char *fieldDataString) void SoTransformerManipGet(SoTransformerManip *this, SbString *fieldDataString) int SoTransformerManipGetFields(const SoTransformerManip *this, SoFieldList *resultList) SoField * SoTransformerManipGetField(const SoTransformerManip *this, const char *fieldName) SbBool SoTransformerManipGetFieldName(const SoTransformerManip *this, const SoField *field, SbName *fieldName) SbBool SoTransformerManipIsNotifyEnabled(const SoTransformerManip *this) SbBool SoTransformerManipEnableNotify(SoTransformerManip *this, SbBool flag) Functions from class SoBase: void SoTransformerManipRef(SoTransformerManip *this) void SoTransformerManipUnref(const SoTransformerManip *this) void SoTransformerManipUnrefNoDelete(const SoTransformerManip *this) void SoTransformerManipTouch(SoTransformerManip *this) SoType SoTransformerManipGetTypeId(const SoTransformerManip *this) SbBool SoTransformerManipIsOfType(const SoTransformerManip *this, SoType type) void SoTransformerManipSetName(SoTransformerManip *this, const char *name) SbName SoTransformerManipGetName(const SoTransformerManip *this) 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) FUNCTIONS SoTransformerManip * SoTransformerManipCreate() Constructor. SoType SoTransformerManipGetClassTypeId() Returns type identifier for this class. void SoTransformerManipSetLocateHighlighting(SoTransformerManip *this, SbBool onOff ) SbBool SoTransformerManipIsLocateHighlighting(SoTransformerManip *this) Controls whether or not the dragger inside this manip will perform locate highlighting is used. Default is TRUE. void SoTransformerManipUnsquishKnobs(SoTransformerManip *this) 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