SoScaleUniformDragger(3IV)
SoScaleUniformDragger (SoScaleUniDrag) - object you can scale uniformly in 3D by dragging with the mouse
Showing IRIX 6.5.30 (default release). Added in IRIX 6.5.22.
NAME SoScaleUniformDragger (SoScaleUniDrag) - object you can scale uniformly in 3D by dragging with the mouse INHERITS FROM SoBase > SoFieldContainer > SoNode > SoBaseKit > SoInteractionKit > SoDragger > SoScaleUniformDragger SYNOPSIS #include <Inventor_c/draggers/SoScaleUniformDragger.h> typedef SoScaleUniformDragger SoScaleUniDrag Fields from class SoDragger: SoSFBool isActive Fields from class SoInteractionKit: SoSFEnum renderCaching SoSFEnum boundingBoxCaching SoSFEnum renderCulling SoSFEnum pickCulling Parts from class SoBaseKit: (SoNodeKitListPart) callbackList Functions from class SoDragger: void SoScaleUniDragAddStartCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragRemoveStartCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragAddMotionCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragRemoveMotionCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragAddFinishCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragRemoveFinishCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragAddValueChangedCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) void SoScaleUniDragRemoveValueChangedCB(SoScaleUniDrag *this, SoDraggerCB *f, void *userData = NULL) SbBool SoScaleUniDragEnableValueChangedCBs(SoScaleUniDrag *this) void SoScaleUniDragSetMinGesture(SoScaleUniDrag *this, int pixels) int SoScaleUniDragGetMinGesture(const SoScaleUniDrag *this) void SoScaleUniDragSetMinScale(float newMinScale) float SoScaleUniDragGetMinScale() const SoNodekitCatalog * SoScaleUniDragGetClassNkitCat() SoType SoScaleUniDragGetClassTypeId() Functions from class SoInteractionKit: SbBool SoScaleUniDragSetPartAsPath(SoScaleUniDrag *this, const char *partName, SoPath *surrogatePath ) Functions from class SoBaseKit: const SoNodekitCatalog * SoScaleUniDragGetCat(const SoScaleUniDrag *this) SoNode * SoScaleUniDragGetPart(SoScaleUniDrag *this, const char *partName, SbBool makeIfNeeded) SbString SoScaleUniDragGetPartString(SoScaleUniDrag *this, const SoBase *part) SoNodeKitPath * SoScaleUniDragCreatePathToPart(SoScaleUniDrag *this, const char *partName, SbBool makeIfNeeded, const SoPath *pathToExtend = NULL) SbBool SoScaleUniDragSetPart(SoScaleUniDrag *this, const char *partName, SoNode *newPart) SbBool SoScaleUniDragSet(SoScaleUniDrag *this, char *partName, char *parameters) SbBool SoScaleUniDragSet2(SoScaleUniDrag *this, char *nameValuePairs) SbBool SoScaleUniDragIsSearchingChildren() void SoScaleUniDragSetSearchingChildren(SbBool newVal) Functions from class SoNode: void SoScaleUniDragSetOverride(SoScaleUniDrag *this, SbBool state) SbBool SoScaleUniDragIsOverride(const SoScaleUniDrag *this) SoNode * SoScaleUniDragCopy(const SoScaleUniDrag *this, SbBool copyConnections = FALSE) SbBool SoScaleUniDragAffectsState(const SoScaleUniDrag *this) SoNode * SoScaleUniDragGetByName(const char *name) int SoScaleUniDragGetByNameList(const char *name, SoNodeList *list) Functions from class SoFieldContainer: void SoScaleUniDragSetToDflts(SoScaleUniDrag *this) SbBool SoScaleUniDragHasDfltVals(const SoScaleUniDrag *this) SbBool SoScaleUniDragFldsAreEq(const SoScaleUniDrag *this, const SoFieldContainer *fc) void SoScaleUniDragCopyFieldVals(SoScaleUniDrag *this, const SoFieldContainer *fc, SbBool copyConnections = FALSE) void SoScaleUniDragGet(SoScaleUniDrag *this, SbString *fieldDataString) int SoScaleUniDragGetFields(const SoScaleUniDrag *this, SoFieldList *resultList) SoField * SoScaleUniDragGetField(const SoScaleUniDrag *this, const char *fieldName) SbBool SoScaleUniDragGetFieldName(const SoScaleUniDrag *this, const SoField *field, SbName *fieldName) SbBool SoScaleUniDragIsNotifyEnabled(const SoScaleUniDrag *this) SbBool SoScaleUniDragEnableNotify(SoScaleUniDrag *this, SbBool flag) Functions from class SoBase: void SoScaleUniDragRef(SoScaleUniDrag *this) void SoScaleUniDragUnref(const SoScaleUniDrag *this) void SoScaleUniDragUnrefNoDelete(const SoScaleUniDrag *this) void SoScaleUniDragTouch(SoScaleUniDrag *this) SoType SoScaleUniDragGetTypeId(const SoScaleUniDrag *this) SbBool SoScaleUniDragIsOfType(const SoScaleUniDrag *this, SoType type) void SoScaleUniDragSetName(SoScaleUniDrag *this, const char *name) SbName SoScaleUniDragGetName(const SoScaleUniDrag *this) DESCRIPTION SoScaleUniformDragger is a simple dragger that scales uniformly in all 3 dimensions when dragged with the mouse. The local space is determined by its location in the scene graph. Transformation nodes placed before it will affect both the dragger and the plane of motion. This node has a scaleFactor field which always reflects its size in local space. If you set the field, the dragger will change accordingly. You can also connect fields of other nodes or engines from this one to make them follow the dragger's motion. This dragger contains four parts, scaler, scalerActive, feedback, and feedbackActive. Each of these is set by default from a resource described in the Dragger Resources section of the online reference page for this class. You can change the parts in any instance of this dragger using SoDraggerSetPart(). You can make your program use different default resources for the parts by copying the file /usr/share/data/draggerDefaults/scaleUniformDragger.iv into your own directory, editing the file, and then setting the environment variable SO_DRAGGER_DIR to be a path to that directory. CATALOG PARTS ___________________________________________________________ All parts NULL by Part Name Part Type Default Type Default callbackList NodeKitListPart -- yes scaler Separator -- yes scalerActive Separator -- yes feedback Separator -- yes feedbackActive Separator -- yes ___________________________________________________________ | | ________________________________________________________________ Extra information for list parts from above table Part Name Container Type Permissible Types Callback, EventCallback callbackList Separator ________________________________________________________________ | | DRAGGER RESOURCES Resource: scaleUniformScaler Part: scaler Appearance: 8 small white cubes at the corners of a larger 2x2x2 cube. Description: picking this initiates the scaling Resource: scaleUniformScalerActive Part: scalerActive Appearance: yellow version of scaler, but with extra yellow box connecting corners Description: displayed instead of scaler while in motion Resource: scaleUniformFeedback Part: feedback Appearance: thin purple 3-D crosshair Description: shows center of scale when still Resource: scaleUniformFeedbackActive Part: feedbackActive Appearance: thin, slightly brighter purple 3-D crosshair Description: shows center of scale while in motion FILE FORMAT/DEFAULTS ScaleUniformDragger { renderCaching AUTO boundingBoxCaching AUTO renderCulling AUTO pickCulling AUTO isActive FALSE scaleFactor 1 1 1 callbackList NULL scaler <scaleUniformScaler resource> scalerActive <scaleUniformScalerActive resource> feedback <scaleUniformFeedback resource> feedbackActive <scaleUniformFeedbackActive resource> } SEE ALSO SoInteractionKit, SoDragger, SoCenterballDragger, SoDirectionalLightDragger, SoDragPointDragger, SoHandleBoxDragger, SoJackDragger, SoPointLightDragger, SoRotateCylindricalDragger, SoRotateDiscDragger, SoRotateSphericalDragger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformerDragger, SoTranslate1Dragger, SoTranslate2Dragger