|
| SoRotateSphericalDragger (void) |
|
virtual const SoNodekitCatalog * | getNodekitCatalog (void) const |
|
const SbSphereProjector * | getProjector (void) const |
|
virtual SoType | getTypeId (void) const |
|
void | setProjector (SbSphereProjector *p) |
|
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 | ~SoRotateSphericalDragger (void) |
|
virtual void | copyContents (const SoFieldContainer *fromfc, SbBool copyconnections) |
|
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 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 SoRotateSphericalDragger class is for rotating geometry in any direction.
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 freely in any direction.
For the initial dragger orientation and the dragger geometry positioning itself, use some kind of transformation node in your scene graph, as usual.
SoRotateSphericalDragger::SoRotateSphericalDragger |
( |
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 SoRotateSphericalDragger
-->"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 SoRotateSphericalDragger
PVT "this", SoRotateSphericalDragger ---
"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.)
Makes a deep copy of all data of from into this instance, except external scene graph references if copyconnections is FALSE
.
This is the method that should be overridden by extension node / engine / dragger / whatever subclasses which need to account for internal data that are not handled automatically.
For copying nodes from application code, you should not invoke this function directly, but rather call the SoNode::copy() function:
The SbList class is a template container class for lists.
Definition SbList.h:70
void copy(const SbList< Type > &l)
Definition SbList.h:92
The SoNode class is the base class for nodes used in scene graphs.
Definition SoNode.h:56
The same also goes for engines.
Make sure that when you override the copyContents() method in your extension class that you also make it call upwards to its parent superclass in the inheritance hierarchy, as copyContents() in for instance SoNode and SoFieldContainer does important work. It should go something like this:
void
{
}
The SoFieldContainer class is a base class for all classes that contain fields.
Definition SoFieldContainer.h:43
virtual void copyContents(const SoFieldContainer *from, SbBool copyconnections)
Definition SoNode.cpp:1483
Reimplemented from SoInteractionKit.