|
| SoRotateDiscDragger (void) |
|
virtual const SoNodekitCatalog * | getNodekitCatalog (void) const |
|
virtual SoType | getTypeId (void) const |
|
void | addFinishCallback (SoDraggerCB *func, void *data=NULL) |
|
void | addMotionCallback (SoDraggerCB *func, void *data=NULL) |
|
void | addOtherEventCallback (SoDraggerCB *func, void *data=NULL) |
|
void | addStartCallback (SoDraggerCB *func, void *data=NULL) |
|
void | addValueChangedCallback (SoDraggerCB *func, void *data=NULL) |
|
virtual void | callback (SoCallbackAction *action) |
|
SoPath * | createPathToThis (void) |
|
SbBool | enableValueChangedCallbacks (SbBool newval) |
|
const SoEvent * | getEvent (void) const |
|
ProjectorFrontSetting | getFrontOnProjector (void) const |
|
SoHandleEventAction * | getHandleEventAction (void) const |
|
SbVec3f | getLocalStartingPoint (void) |
|
SbMatrix | getLocalToWorldMatrix (void) |
|
virtual void | getMatrix (SoGetMatrixAction *action) |
|
int | getMinGesture (void) const |
|
const SbMatrix & | getMotionMatrix (void) |
|
void | getPartToLocalMatrix (const SbName &partname, SbMatrix &parttolocalmatrix, SbMatrix &localtopartmatrix) |
|
const SoPath * | getPickPath (void) const |
|
virtual void | getPrimitiveCount (SoGetPrimitiveCountAction *action) |
|
float | getProjectorEpsilon (void) const |
|
const SbMatrix & | getStartMotionMatrix (void) |
|
const SbName & | getSurrogatePartPickedName (void) const |
|
const SoPath * | getSurrogatePartPickedOwner (void) const |
|
const SoPath * | getSurrogatePartPickedPath (void) const |
|
const SbViewportRegion & | getViewportRegion (void) |
|
const SbViewVolume & | getViewVolume (void) |
|
SbVec3f | getWorldStartingPoint (void) |
|
SbMatrix | getWorldToLocalMatrix (void) |
|
virtual void | GLRender (SoGLRenderAction *action) |
|
virtual void | grabEventsCleanup (void) |
|
virtual void | grabEventsSetup (void) |
|
virtual void | rayPick (SoRayPickAction *action) |
|
void | registerChildDragger (SoDragger *child) |
|
void | registerChildDraggerMovingIndependently (SoDragger *child) |
|
void | removeFinishCallback (SoDraggerCB *func, void *data=NULL) |
|
void | removeMotionCallback (SoDraggerCB *func, void *data=NULL) |
|
void | removeOtherEventCallback (SoDraggerCB *func, void *data=NULL) |
|
void | removeStartCallback (SoDraggerCB *func, void *data=NULL) |
|
void | removeValueChangedCallback (SoDraggerCB *func, void *data=NULL) |
|
virtual void | saveStartParameters (void) |
|
virtual void | search (SoSearchAction *action) |
|
void | setFrontOnProjector (ProjectorFrontSetting newval) |
|
void | setHandleEventAction (SoHandleEventAction *newAction) |
|
void | setMinGesture (int pixels) |
|
virtual void | setMotionMatrix (const SbMatrix &newmatrix) |
|
void | setProjectorEpsilon (const float epsilon) |
|
void | setStartingPoint (const SbVec3f &newpoint) |
|
void | setStartingPoint (const SoPickedPoint *newpoint) |
|
void | setTempPathToThis (const SoPath *somethingclose) |
|
void | setViewportRegion (const SbViewportRegion ®) |
|
void | setViewVolume (const SbViewVolume &vol) |
|
void | transformMatrixLocalToWorld (const SbMatrix &frommatrix, SbMatrix &tomatrix) |
|
void | transformMatrixToLocalSpace (const SbMatrix &frommatrix, SbMatrix &tomatrix, const SbName &fromspacepartname) |
|
void | transformMatrixWorldToLocal (const SbMatrix &frommatrix, SbMatrix &tomatrix) |
|
void | unregisterChildDragger (SoDragger *child) |
|
void | unregisterChildDraggerMovingIndependently (SoDragger *child) |
|
void | valueChanged (void) |
|
void | workFieldsIntoTransform (SbMatrix &mtx) |
|
virtual void | write (SoWriteAction *action) |
|
| SoInteractionKit (void) |
|
SbBool | isPathSurrogateInMySubgraph (const SoPath *path) |
|
SbBool | isPathSurrogateInMySubgraph (const SoPath *path, SoPath *&pathToOwner, SbName &surrogatename, SoPath *&surrogatepath, SbBool fillargs=TRUE) |
|
virtual SbBool | setPart (const SbName &partname, SoNode *from) |
|
virtual SbBool | setPartAsDefault (const SbName &partname, const SbName &nodename, SbBool onlyifdefault=TRUE) |
|
virtual SbBool | setPartAsDefault (const SbName &partname, SoNode *node, SbBool onlyifdefault=TRUE) |
|
virtual SbBool | setPartAsPath (const SbName &partname, SoPath *path) |
|
| SoBaseKit (void) |
|
virtual void | addWriteReference (SoOutput *out, SbBool isfromfield=FALSE) |
|
virtual SoNodeKitPath * | createPathToPart (const SbName &partname, SbBool makeifneeded, const SoPath *pathtoextend=NULL) |
|
virtual void | doAction (SoAction *action) |
|
SbBool | forceChildDrivenWriteRefs (SoOutput *out) |
|
virtual SoChildList * | getChildren (void) const |
|
virtual SoNode * | getPart (const SbName &partname, SbBool makeifneeded) |
|
SbString | getPartString (const SoBase *part) |
|
void | printDiagram (void) |
|
void | printSubDiagram (const SbName &rootname, int level) |
|
void | printTable (void) |
|
SbBool | set (const char *namevaluepairliststring) |
|
SbBool | set (const char *partnamestring, const char *parameterstring) |
|
virtual SbBool | affectsState (void) const |
|
virtual void | audioRender (SoAudioRenderAction *action) |
|
virtual SoNode * | copy (SbBool copyconnections=FALSE) const |
|
virtual SoFieldContainer * | copyThroughConnection (void) const |
|
SbUniqueId | getNodeId (void) const |
|
NodeType | getNodeType (void) const |
|
virtual void | GLRenderBelowPath (SoGLRenderAction *action) |
|
virtual void | GLRenderInPath (SoGLRenderAction *action) |
|
virtual void | GLRenderOffPath (SoGLRenderAction *action) |
|
SbBool | isOverride (void) const |
|
virtual void | notify (SoNotList *l) |
|
virtual void | pick (SoPickAction *action) |
|
void | setNodeType (const NodeType type) |
|
void | setOverride (const SbBool state) |
|
virtual void | startNotify (void) |
|
virtual void | writeInstance (SoOutput *out) |
|
void | copyFieldValues (const SoFieldContainer *container, SbBool copyconnections=FALSE) |
|
SbBool | enableNotify (const SbBool flag) |
|
SbBool | fieldsAreEqual (const SoFieldContainer *container) const |
|
void | get (SbString &fielddata) |
|
void | get (SbString &fielddata, SoOutput *out) |
|
virtual int | getAllFields (SoFieldList &l) const |
|
virtual SoField * | getEventIn (const SbName &name) const |
|
virtual SoField * | getEventOut (const SbName &name) const |
|
virtual SoField * | getField (const SbName &name) const |
|
SbBool | getFieldName (const SoField *const field, SbName &name) const |
|
virtual int | getFields (SoFieldList &l) const |
|
virtual void | getFieldsMemorySize (size_t &managed, size_t &unmanaged) const |
|
SbBool | getIsBuiltIn (void) const |
|
void * | getUserData (void) const |
|
SbBool | hasDefaultValues (void) const |
|
SbBool | isNotifyEnabled (void) const |
|
SbBool | set (const char *const fielddata) |
|
SbBool | set (const char *fielddata, SoInput *input) |
|
void | setToDefaults (void) |
|
void | setUserData (void *userdata) const |
|
virtual SbBool | validateNewFieldValue (SoField *field, void *newval) |
|
void | addAuditor (void *const auditor, const SoNotRec::Type type) |
|
void | assertAlive (void) const |
|
const SoAuditorList & | getAuditors (void) const |
|
virtual SbName | getName (void) const |
|
int32_t | getRefCount (void) const |
|
SbBool | isOfType (SoType type) const |
| Returns TRUE if the type of this object is either of the same type or inherited from type.
|
|
void | ref (void) const |
|
void | removeAuditor (void *const auditor, const SoNotRec::Type type) |
|
virtual void | setName (const SbName &newname) |
|
SbBool | shouldWrite (void) |
|
void | touch (void) |
|
void | unref (void) const |
|
void | unrefNoDelete (void) const |
|
|
static const SoNodekitCatalog * | getClassNodekitCatalog (void) |
|
static SoType | getClassTypeId (void) |
|
static void | initClass (void) |
|
static SbMatrix | appendRotation (const SbMatrix &mtx, const SbRotation &rot, const SbVec3f &rotcenter, const SbMatrix *conversion=NULL) |
|
static SbMatrix | appendScale (const SbMatrix &mtx, const SbVec3f &scale, const SbVec3f &scalecenter, const SbMatrix *conversion=NULL) |
|
static SbMatrix | appendTranslation (const SbMatrix &mtx, const SbVec3f &translation, const SbMatrix *conversion=NULL) |
|
static const SoNodekitCatalog * | getClassNodekitCatalog (void) |
|
static SoType | getClassTypeId (void) |
|
static float | getMinScale (void) |
|
static void | getTransformFast (SbMatrix &mtx, SbVec3f &translation, SbRotation &rotation, SbVec3f &scalefactor, SbRotation &scaleorientation) |
|
static void | getTransformFast (SbMatrix &mtx, SbVec3f &translation, SbRotation &rotation, SbVec3f &scalefactor, SbRotation &scaleorientation, const SbVec3f ¢er) |
|
static void | initClass (void) |
|
static void | initClasses (void) |
|
static void | setMinScale (float newminscale) |
|
static void | workValuesIntoTransform (SbMatrix &mtx, const SbVec3f *translationptr, const SbRotation *rotationptr, const SbVec3f *scalefactorptr, const SbRotation *scaleorientationptr, const SbVec3f *centerptr) |
|
static const SoNodekitCatalog * | getClassNodekitCatalog (void) |
|
static SoType | getClassTypeId (void) |
|
static void | initClass (void) |
| Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
|
|
static void | setSwitchValue (SoNode *node, const int newVal) |
|
static const SoNodekitCatalog * | getClassNodekitCatalog (void) |
|
static SoType | getClassTypeId (void) |
|
static void | initClass (void) |
|
static SbBool | isSearchingChildren (void) |
|
static void | setSearchingChildren (const SbBool newval) |
|
static void | audioRenderS (SoAction *action, SoNode *node) |
|
static void | callbackS (SoAction *action, SoNode *node) |
|
static int | getActionMethodIndex (const SoType type) |
|
static void | getBoundingBoxS (SoAction *action, SoNode *node) |
|
static SoNode * | getByName (const SbName &name) |
|
static int | getByName (const SbName &name, SoNodeList &l) |
|
static SoType | getClassTypeId (void) |
|
static uint32_t | getCompatibilityTypes (const SoType &nodetype) |
|
static void | getMatrixS (SoAction *action, SoNode *node) |
|
static SbUniqueId | getNextNodeId (void) |
|
static void | getPrimitiveCountS (SoAction *action, SoNode *node) |
|
static void | GLRenderS (SoAction *action, SoNode *node) |
|
static void | handleEventS (SoAction *action, SoNode *node) |
|
static void | initClass (void) |
| Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
|
|
static void | initClasses (void) |
|
static void | pickS (SoAction *action, SoNode *node) |
|
static void | rayPickS (SoAction *action, SoNode *node) |
|
static void | searchS (SoAction *action, SoNode *node) |
|
static void | writeS (SoAction *action, SoNode *node) |
|
static void | addCopy (const SoFieldContainer *orig, const SoFieldContainer *copy) |
|
static SoFieldContainer * | checkCopy (const SoFieldContainer *orig) |
|
static void | cleanupClass (void) |
|
static void | copyDone (void) |
|
static SoFieldContainer * | findCopy (const SoFieldContainer *orig, const SbBool copyconnections) |
|
static SoType | getClassTypeId (void) |
| This static method returns the SoType object associated with objects of this class.
|
|
static void | initClass (void) |
| Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
|
|
static void | initCopyDict (void) |
|
static void | addName (SoBase *const base, const char *const name) |
|
static SbBool | connectRoute (SoInput *input, const SbName &fromnodename, const SbName &fromfieldname, const SbName &tonodename, const SbName &tofieldname) |
|
static void | decrementCurrentWriteCounter (void) |
|
static SoType | getClassTypeId (void) |
| This static method returns the SoType object associated with objects of this class.
|
|
static SoBase * | getNamedBase (const SbName &name, SoType type) |
|
static int | getNamedBases (const SbName &name, SoBaseList &baselist, SoType type) |
|
static SbBool | getTraceRefs (void) |
|
static void | incrementCurrentWriteCounter (void) |
|
static void | initClass (void) |
| Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
|
|
static SbBool | read (SoInput *input, SoBase *&base, SoType expectedtype) |
|
static SbBool | readRoute (SoInput *input) |
|
static void | removeName (SoBase *const base, const char *const name) |
|
static void | setInstancePrefix (const SbString &c) |
|
static void | setTraceRefs (SbBool trace) |
|
|
virtual | ~SoRotateDiscDragger (void) |
|
void | drag (void) |
|
void | dragFinish (void) |
|
void | dragStart (void) |
|
virtual const SoFieldData * | getFieldData (void) const |
|
virtual SbBool | setUpConnections (SbBool onoff, SbBool doitalways=FALSE) |
|
| SoDragger (void) |
|
virtual | ~SoDragger (void) |
|
SoDragger * | getActiveChildDragger (void) const |
|
virtual void | getBoundingBox (SoGetBoundingBoxAction *action) |
|
SbVec2s | getLocaterPosition (void) |
|
SbVec2f | getNormalizedLocaterPosition (void) |
|
virtual const SoPickedPoint * | getPickedPointForStart (SoHandleEventAction *action) |
|
SbVec2s | getStartLocaterPosition (void) const |
|
virtual void | handleEvent (SoHandleEventAction *ha) |
|
SbBool | isAdequateConstraintMotion (void) |
|
SbBool | isIgnoreInBbox (void) |
|
void | setActiveChildDragger (SoDragger *newchilddragger) |
|
void | setCameraInfo (SoAction *action) |
|
virtual void | setDefaultOnNonWritingFields (void) |
|
void | setIgnoreInBbox (SbBool newval) |
|
void | setStartLocaterPosition (SbVec2s p) |
|
virtual SbBool | shouldGrabBasedOnSurrogate (const SoPath *pickpath, const SoPath *surrogatepath) |
|
void | transferMotion (SoDragger *child) |
|
void | updateDraggerCache (const SoPath *path) |
|
virtual | ~SoInteractionKit () |
|
void | connectSeparatorFields (SoSeparator *dest, SbBool onOff) |
|
virtual void | copyContents (const SoFieldContainer *fromFC, SbBool copyConnections) |
|
virtual SbBool | readInstance (SoInput *in, unsigned short flags) |
|
virtual SbBool | setAnyPartAsDefault (const SbName &partname, const SbName &nodename, SbBool anypart=TRUE, SbBool onlyifdefault=TRUE) |
|
virtual SbBool | setAnyPartAsDefault (const SbName &partname, SoNode *node, SbBool anypart=TRUE, SbBool onlyifdefault=TRUE) |
|
SbBool | setAnySurrogatePath (const SbName &name, SoPath *path, SbBool leafcheck=FALSE, SbBool publiccheck=FALSE) |
|
virtual SbBool | setPart (const int partNum, SoNode *node) |
|
virtual | ~SoBaseKit () |
|
virtual SoNode * | addToCopyDict (void) const |
|
void | catalogError (void) |
|
void | countMyFields (SoOutput *out) |
|
virtual void | createDefaultParts (void) |
|
void | createFieldList (void) |
|
void | createNodekitPartsList (void) |
|
virtual SoNodeKitPath * | createPathToAnyPart (const SbName &partname, SbBool makeifneeded, SbBool leafcheck=FALSE, SbBool publiccheck=FALSE, const SoPath *pathtoextend=NULL) |
|
virtual SoNode * | getAnyPart (const SbName &partname, SbBool makeifneeded, SbBool leafcheck=FALSE, SbBool publiccheck=FALSE) |
|
const SbList< SoSFNode * > & | getCatalogInstances (void) const |
|
SoGroup * | getContainerNode (const SbName &listname, SbBool makeifneeded=TRUE) |
|
const SoNodekitParts * | getNodekitPartsList (void) const |
|
virtual SbBool | setAnyPart (const SbName &partname, SoNode *from, SbBool anypart=TRUE) |
|
| SoNode (void) |
|
virtual | ~SoNode () |
|
| SoFieldContainer (void) |
|
virtual | ~SoFieldContainer () |
|
| SoBase (void) |
|
virtual | ~SoBase () |
|
virtual SoNotRec | createNotRec (void) |
|
virtual void | destroy (void) |
|
virtual const char * | getFileFormatName (void) const |
|
SbBool | hasMultipleWriteRefs (void) const |
|
void | writeFooter (SoOutput *out) const |
|
SbBool | writeHeader (SoOutput *out, SbBool isgroup, SbBool isengine) const |
|
|
static void | doneCB (void *f, SoDragger *d) |
|
static void | fieldSensorCB (void *f, SoSensor *s) |
|
static const SoNodekitCatalog ** | getClassNodekitCatalogPtr (void) |
|
static const SoFieldData ** | getFieldDataPtr (void) |
|
static void | motionCB (void *f, SoDragger *d) |
|
static void | startCB (void *f, SoDragger *d) |
|
static void | valueChangedCB (void *f, SoDragger *d) |
|
static void | childFinishCB (void *, SoDragger *) |
|
static void | childMotionCB (void *, SoDragger *) |
|
static void | childOtherEventCB (void *, SoDragger *) |
|
static void | childStartCB (void *, SoDragger *) |
|
static void | childTransferMotionAndValueChangedCB (void *, SoDragger *) |
|
static void | childValueChangedCB (void *, SoDragger *) |
|
static const SoNodekitCatalog ** | getClassNodekitCatalogPtr (void) |
|
static const SoFieldData ** | getFieldDataPtr (void) |
|
static void | fieldSensorCB (void *, SoSensor *) |
|
static const SoNodekitCatalog ** | getClassNodekitCatalogPtr (void) |
|
static const SoFieldData ** | getFieldDataPtr (void) |
|
static void | readDefaultParts (const char *fileName, const char defaultBuffer[], int defBufSize) |
|
static const SoNodekitCatalog ** | getClassNodekitCatalogPtr (void) |
|
static const SoFieldData ** | getFieldDataPtr (void) |
|
static const SoFieldData ** | getFieldDataPtr (void) |
|
static int | getNextActionMethodIndex (void) |
|
static void | incNextActionMethodIndex (void) |
|
static void | setCompatibilityTypes (const SoType &nodetype, const uint32_t bitmask) |
|
static void | setNextActionMethodIndex (int index) |
|
static uint32_t | getCurrentWriteCounter (void) |
|
static void | staticDataLock (void) |
|
static void | staticDataUnlock (void) |
|
|
enum | ProjectorFrontSetting { FRONT
, BACK
, USE_PICK
} |
|
enum | CacheEnabled { OFF
, ON
, AUTO
} |
|
enum | NodeType {
INVENTOR = 0x0000
, VRML1 = 0x0001
, VRML2 = 0x0002
, INVENTOR_1 = 0x0004
,
INVENTOR_2_0 = 0x0008
, INVENTOR_2_1 = 0x0010
, INVENTOR_2_5 = 0x0020
, INVENTOR_2_6 = 0x0040
,
COIN_1_0 = 0x0080
, COIN_2_0 = 0x0100
, EXTENSION = 0x0200
, COIN_2_2 = 0x0400
,
COIN_2_3 = 0x0800
, COIN_2_4 = 0x1000
, INVENTOR_5_0 = 0x2000
, COIN_2_5 = 0x4000
,
COIN_3_0 = 0x8000
, INVENTOR_6_0 = 0x10000
, COIN_4_0 = 0x20000
} |
|
enum | BaseFlags { IS_ENGINE = 0x01
, IS_GROUP = 0x02
} |
|
static int | nextActionMethodIndex = 0 |
|
static SbUniqueId | nextUniqueId = 1 |
|
The SoRotateDiscDragger class is for rotating geometry around a single axis.
Here's how the dragger looks with its default geometry in the inactive state:
Screen Shot of Default Dragger
Use an instance of this dragger class in your scene graph to let the end-users of your application rotate geometry around a predefined axis vector in 3D.
The special feature of this dragger that sets it apart from the other draggers that provides rotation around an axis (like the SoRotateCylindricalDragger) is that it provides a convenient interface to rotate around an axis that is pointing in approximately the same direction as the camera. This is useful for interacting with for instance something like a "volume" knob.
For the dragger orientation and positioning itself, use some kind of transformation node in your scene graph, as usual.
SoRotateDiscDragger::SoRotateDiscDragger |
( |
void | | ) |
|
Default constructor, sets up the dragger nodekit catalog with the interaction and feedback geometry.
Nodekit structure (new entries versus parent class marked with arrow prefix):
CLASS SoRotateDiscDragger
-->"this"
"callbackList"
"topSeparator"
"motionMatrix"
"geomSeparator"
--> "rotatorSwitch"
--> "rotator"
--> "rotatorActive"
--> "feedbackSwitch"
--> "feedback"
--> "feedbackActive"
(See SoBaseKit::printDiagram() for information about the output formatting.)
Detailed information on catalog parts:
CLASS SoRotateDiscDragger
PVT "this", SoRotateDiscDragger ---
"callbackList", SoNodeKitListPart [ SoCallback, SoEventCallback ]
PVT "topSeparator", SoSeparator ---
PVT "motionMatrix", SoMatrixTransform ---
PVT "geomSeparator", SoSeparator ---
PVT "rotatorSwitch", SoSwitch ---
"rotator", SoSeparator ---
"rotatorActive", SoSeparator ---
PVT "feedbackSwitch", SoSwitch ---
"feedback", SoSeparator ---
"feedbackActive", SoSeparator ---
(See SoBaseKit::printTable() for information about the output formatting.)