1 #ifndef COIN_SOCENTERBALLDRAGGER_H
2 #define COIN_SOCENTERBALLDRAGGER_H
27 #include <Inventor/draggers/SoDragger.h>
28 #include <Inventor/fields/SoSFRotation.h>
29 #include <Inventor/fields/SoSFVec3f.h>
40 SO_KIT_CATALOG_ENTRY_HEADER(XAxis);
41 SO_KIT_CATALOG_ENTRY_HEADER(XAxisSwitch);
42 SO_KIT_CATALOG_ENTRY_HEADER(XCenterChanger);
43 SO_KIT_CATALOG_ENTRY_HEADER(XRotator);
44 SO_KIT_CATALOG_ENTRY_HEADER(YAxis);
45 SO_KIT_CATALOG_ENTRY_HEADER(YAxisSwitch);
46 SO_KIT_CATALOG_ENTRY_HEADER(YCenterChanger);
47 SO_KIT_CATALOG_ENTRY_HEADER(YRotator);
48 SO_KIT_CATALOG_ENTRY_HEADER(ZAxis);
49 SO_KIT_CATALOG_ENTRY_HEADER(ZAxisSwitch);
50 SO_KIT_CATALOG_ENTRY_HEADER(ZCenterChanger);
51 SO_KIT_CATALOG_ENTRY_HEADER(ZRotator);
52 SO_KIT_CATALOG_ENTRY_HEADER(antiSquish);
53 SO_KIT_CATALOG_ENTRY_HEADER(lightModel);
54 SO_KIT_CATALOG_ENTRY_HEADER(rot2X90);
55 SO_KIT_CATALOG_ENTRY_HEADER(rotX90);
56 SO_KIT_CATALOG_ENTRY_HEADER(rotY90);
57 SO_KIT_CATALOG_ENTRY_HEADER(rotator);
58 SO_KIT_CATALOG_ENTRY_HEADER(surroundScale);
59 SO_KIT_CATALOG_ENTRY_HEADER(translateToCenter);
72 void transferCenterDraggerMotion(
SoDragger * childdragger);
73 void setSwitches(
SoDragger * activechild);
78 static void valueChangedCB(
void * f,
SoDragger * d);
79 static void kidStartCB(
void * f,
SoDragger * d);
80 static void kidFinishCB(
void * f,
SoDragger * d);
92 void removeChildDragger(
const char *childname);
95 #endif // !COIN_SOCENTERBALLDRAGGER_H
virtual void getMatrix(SoGetMatrixAction *action)
Definition: SoDragger.cpp:517
The SoSFVec3f class is a container for an SbVec3f vector.
Definition: SoSFVec3f.h:31
The SbRotation class represents a rotation in 3D space.
Definition: SbRotation.h:33
void workFieldsIntoTransform(SbMatrix &mtx)
Definition: SoDragger.cpp:1123
void registerChildDragger(SoDragger *child)
Definition: SoDragger.cpp:722
The SoRotation class specifies a rotation transformation.
Definition: SoRotation.h:31
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
Definition: SoDragger.cpp:1715
The SbMatrix class is a 4x4 dimensional representation of a matrix.
Definition: SbMatrix.h:37
The SoSFRotation class is a container for an SbRotation.
Definition: SoSFRotation.h:31
virtual SoNode * getAnyPart(const SbName &partname, SbBool makeifneeded, SbBool leafcheck=0, SbBool publiccheck=0)
Definition: SoBaseKit.cpp:1722
The SoCenterballDragger class is a dragger you can rotate and translate.
Definition: SoCenterballDragger.h:35
void setRotate(const SbRotation &q)
Definition: SbMatrix.cpp:314
The SoSensor class is the abstract base class for all sensors.
Definition: SoSensor.h:34
~SoCenterballDragger()
Definition: SoCenterballDragger.cpp:297
virtual SoNode * getPart(const SbName &partname, SbBool makeifneeded)
Definition: SoBaseKit.cpp:699
void multVecMatrix(const SbVec3f &src, SbVec3f &dst) const
Definition: SbMatrix.cpp:1357
static void fieldSensorCB(void *f, SoSensor *s)
Definition: SoCenterballDragger.cpp:509
The SoRotateSphericalDragger class is for rotating geometry in any direction.
Definition: SoRotateSphericalDragger.h:37
SoField * getAttachedField(void) const
Definition: SoFieldSensor.cpp:107
SbMatrix inverse(void) const
Definition: SbMatrix.cpp:418
SbMatrix & multLeft(const SbMatrix &m)
Definition: SbMatrix.cpp:1280
The SoSurroundScale class is used to automatically scale geometry to surround other geometry.
Definition: SoSurroundScale.h:34
The SoSwitch class is a group node which selects one child subgraph for traversal.
Definition: SoSwitch.h:37
static void setSwitchValue(SoNode *node, const int newVal)
Definition: SoInteractionKit.cpp:358
SoSFBool recalcAlways
Definition: SoAntiSquish.h:48
void removeFinishCallback(SoDraggerCB *func, void *data=NULL)
Definition: SoDragger.cpp:622
SbMatrix & multRight(const SbMatrix &m)
Definition: SbMatrix.cpp:1240
The SoDragger class is the base class for all draggers.
Definition: SoDragger.h:53
The SbString class is a string class with convenience functions for string operations.
Definition: SbString.h:42
static void readDefaultParts(const char *fileName, const char defaultBuffer[], int defBufSize)
Definition: SoInteractionKit.cpp:433
void setDoingTranslations(const SbBool val)
Definition: SoSurroundScale.cpp:297
void addFinishCallback(SoDraggerCB *func, void *data=NULL)
Definition: SoDragger.cpp:611
void detach(void)
Definition: SoFieldSensor.cpp:92
virtual SbBool setUpConnections(SbBool onoff, SbBool doitalways=0)
Definition: SoInteractionKit.cpp:648
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
Definition: SoCenterballDragger.cpp:621
void invalidate(void)
Definition: SoSurroundScale.cpp:270
void addValueChangedCallback(SoDraggerCB *func, void *data=NULL)
Definition: SoDragger.cpp:634
void setMotionMatrix(const SbMatrix &newmatrix)
Definition: SoDragger.cpp:905
SoSFRotation rotation
Definition: SoRotation.h:40
SoFieldSensor * centerFieldSensor
Definition: SoCenterballDragger.h:86
void setDefault(SbBool def)
Definition: SoField.cpp:650
The SoGetMatrixAction class is an action for accumulating the transformation matrix of a subgraph.
Definition: SoGetMatrixAction.h:35
SbRotation inverse(void) const
Definition: SbRotation.cpp:316
The SoRotateCylindricalDragger class is for rotating geometry around a single axis.
Definition: SoRotateCylindricalDragger.h:35
SoSFVec3f center
Definition: SoCenterballDragger.h:68
void removeStartCallback(SoDraggerCB *func, void *data=NULL)
Definition: SoDragger.cpp:581
SoSFEnum sizing
Definition: SoAntiSquish.h:47
void getTransform(SbVec3f &t, SbRotation &r, SbVec3f &s, SbRotation &so) const
Definition: SbMatrix.cpp:997
The SoLightModel class is a node for specifying the model for geometry lighting.
Definition: SoLightModel.h:31
The SoTranslate2Dragger class provides a mechanism for the end-user to translate in a plane.
Definition: SoTranslate2Dragger.h:35
static void kidFinishCB(void *f, SoDragger *d)
Definition: SoCenterballDragger.cpp:587
virtual void saveStartParameters(void)
Definition: SoDragger.cpp:944
SbBool enableValueChangedCallbacks(SbBool newval)
Definition: SoDragger.cpp:677
SoSFRotation rotation
Definition: SoCenterballDragger.h:67
SoFieldSensor * rotFieldSensor
Definition: SoCenterballDragger.h:85
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:37
The SoGetBoundingBoxAction class calculates bounding boxes for nodes and subgraphs.
Definition: SoGetBoundingBoxAction.h:34
static void valueChangedCB(void *f, SoDragger *d)
Definition: SoCenterballDragger.cpp:528
virtual void setDefaultOnNonWritingFields(void)
Definition: SoDragger.cpp:1743
SbString & sprintf(const char *formatstr,...)
Definition: SbString.h:105
void setSwitches(SoDragger *activechild)
Definition: SoCenterballDragger.cpp:365
SbBool connectionsSetUp
Definition: SoBaseKit.h:142
SbBool isDoingTranslations(void)
Definition: SoSurroundScale.cpp:309
void attach(SoField *field)
Definition: SoFieldSensor.cpp:77
virtual void getMatrix(SoGetMatrixAction *action)
Definition: SoCenterballDragger.cpp:636
const SbMatrix & getMotionMatrix(void)
Definition: SoDragger.cpp:688
virtual void setDefaultOnNonWritingFields(void)
Definition: SoCenterballDragger.cpp:490
The SoFieldSensor class detects changes to a field.
Definition: SoFieldSensor.h:29
The SoSeparator class is a state-preserving group node.
Definition: SoSeparator.h:34
void transferCenterDraggerMotion(SoDragger *childdragger)
Definition: SoCenterballDragger.cpp:320
void unregisterChildDragger(SoDragger *child)
Definition: SoDragger.cpp:735
The SoAntiSquish class is used to reset to uniform scaling.
Definition: SoAntiSquish.h:33
virtual void saveStartParameters(void)
Definition: SoCenterballDragger.cpp:306
static void kidStartCB(void *f, SoDragger *d)
Definition: SoCenterballDragger.cpp:572
The SoNode class is the base class for nodes used in scene graphs.
Definition: SoNode.h:47
void addStartCallback(SoDraggerCB *func, void *data=NULL)
Definition: SoDragger.cpp:570
static void fieldSensorCB(void *, SoSensor *)
Definition: SoInteractionKit.cpp:725
static SbMatrix identity(void)
Definition: SbMatrix.cpp:748
const char * getString(void) const
Definition: SbString.h:71
void setTranslate(const SbVec3f &t)
Definition: SbMatrix.cpp:790
static void initClass(void)
Definition: SoDragger.cpp:388
SoCenterballDragger(void)
Definition: SoCenterballDragger.cpp:213
virtual SbBool setPartAsDefault(const SbName &partname, SoNode *node, SbBool onlyifdefault=1)
Definition: SoInteractionKit.cpp:271
virtual SbBool setUpConnections(SbBool onoff, SbBool doitalways=0)
Definition: SoCenterballDragger.cpp:413
Copyright © 1998-2007 by Systems in Motion AS. All rights reserved.
Generated on Mon Jul 27 2020 for Coin by Doxygen. 1.8.18