1SoRotateDiscDragger(3IV)()                          SoRotateDiscDragger(3IV)()
2
3
4

NAME

6       SoRotateDiscDragger  —  object  you  can rotate like a knob by dragging
7       With the mouse
8

INHERITS FROM

10       SoBase > SoFieldContainer > SoNode >  SoBaseKit  >  SoInteractionKit  >
11       SoDragger > SoRotateDiscDragger
12

SYNOPSIS

14       #include <Inventor/draggers/SoRotateDiscDragger.h>
15
16          Fields from class SoRotateDiscDragger:
17
18     SoSFRotation        rotation
19
20          Fields from class SoDragger:
21
22     SoSFBool            isActive
23
24          Fields from class SoInteractionKit:
25
26     SoSFEnum            renderCaching
27     SoSFEnum            boundingBoxCaching
28     SoSFEnum            renderCulling
29     SoSFEnum            pickCulling
30
31          Parts from class SoBaseKit:
32
33     (SoNodeKitListPart)  callbackList
34
35          Methods from class SoRotateDiscDragger:
36
37                         SoRotateDiscDragger()
38     static const SoNodekitCatalog *
39                         getClassNodekitCatalog() const
40     static SoType       getClassTypeId()
41
42          Methods from class SoDragger:
43
44     void                addStartCallback(SoDraggerCB  *f,  void  *userData  =
45                              NULL)
46     void                removeStartCallback(SoDraggerCB *f, void *userData  =
47                              NULL)
48     void                addMotionCallback(SoDraggerCB  *f,  void  *userData =
49                              NULL)
50     void                removeMotionCallback(SoDraggerCB *f, void *userData =
51                              NULL)
52     void                addFinishCallback(SoDraggerCB  *f,  void  *userData =
53                              NULL)
54     void                removeFinishCallback(SoDraggerCB *f, void *userData =
55                              NULL)
56     void                addValueChangedCallback(SoDraggerCB  *f,  void *user‐
57                              Data = NULL)
58     void                removeValueChangedCallback(SoDraggerCB    *f,    void
59                              *userData = NULL)
60     SbBool              enableValueChangedCallbacks()
61     void                setMinGesture(int pixels)
62     int                 getMinGesture() const
63     static void         setMinScale(float newMinScale)
64     static float        getMinScale()
65
66          Methods from class SoInteractionKit:
67
68     virtual  SbBool      setPartAsPath(const SbName &partName, SoPath *surro‐
69                              gatePath )
70
71          Methods from class SoBaseKit:
72
73     virtual const SoNodekitCatalog *
74                              getNodekitCatalog() const
75     virtual   SoNode   *         getPart(const   SbName   &partName,   SbBool
76                                   makeIfNeeded)
77     SbString                 getPartString(const SoBase *part)
78     virtual  SoNodeKitPath *  createPathToPart(const SbName &partName, SbBool
79                                   makeIfNeeded, const SoPath *pathToExtend  =
80                                   NULL)
81     virtual SbBool           setPart(const SbName &partName, SoNode *newPart)
82     SbBool                   set(char *partName, char *parameters)
83     SbBool                   set(char *nameValuePairs)
84     static SbBool            isSearchingChildren()
85     static void              setSearchingChildren(SbBool newVal)
86
87          Methods from class SoNode:
88
89     void                setOverride(SbBool state)
90     SbBool              isOverride() const
91     SoNode *            copy(SbBool copyConnections = FALSE) const
92     virtual SbBool      affectsState() const
93     static SoNode *     getByName(const SbName &name)
94     static int          getByName(const SbName &name, SoNodeList &list)
95
96          Methods from class SoFieldContainer:
97
98     void                setToDefaults()
99     SbBool              hasDefaultValues() const
100     SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
101     void                copyFieldValues(const  SoFieldContainer  *fc,  SbBool
102                              copyConnections = FALSE)
103     void                get(SbString &fieldDataString)
104     virtual int         getFields(SoFieldList &resultList) const
105     virtual SoField *   getField(const SbName &fieldName) const
106     SbBool              getFieldName(const SoField *field, SbName &fieldName)
107                              const
108     SbBool              isNotifyEnabled() const
109     SbBool              enableNotify(SbBool flag)
110
111          Methods from class SoBase:
112
113     void                ref()
114     void                unref() const
115     void                unrefNoDelete() const
116     void                touch()
117     virtual SoType      getTypeId() const
118     SbBool              isOfType(SoType type) const
119     virtual void        setName(const SbName &name)
120     virtual SbName      getName() const
121
122          Macros from class SoBaseKit:
123
124     SO_GET_PART(kit, partName, partClass)
125     SO_CHECK_PART(kit, partName, partClass)
126
127

DESCRIPTION

129       SoRotateDiscDragger  is  a simple dragger that rotates about the z axis
130       of its local space. The feel of the rotation is as if you were spinning
131       a  record  on  a  turntable or rotating the volume knob of a radio. The
132       local space is determined by its location in the scene graph. Transfor‐
133       mation  nodes  placed  before  it  will affect both the dragger and the
134       direction of motion.
135
136       This node has a rotation field which always reflects its orientation in
137       local space. If you set the field, the dragger will rotate accordingly.
138       You can also connect fields of other nodes or engines from this one  to
139       make them follow the dragger's rotation.
140
141       This dragger contains four parts, rotator, rotatorActive, feedback, and
142       feedbackActive.
143
144       Each of these is set by default from a resource described in the  Drag‐
145       ger  Resources section of the online reference page for this class. You
146       can change the parts in any instance of this dragger using setPart().
147
148       You can make your program use different default resources for the parts
149       by  copying  the  file  /usr/share/data/draggerDefaults/rotateDiscDrag‐
150       ger.iv into your own directory, editing the file, and then setting  the
151       environment variable SO_DRAGGER_DIR to be a path to that directory.
152

FIELDS

154     SoSFRotation        rotation
155          Orientation of the dragger.
156
157

METHODS

159                         SoRotateDiscDragger()
160          Constructor.
161
162     static const SoNodekitCatalog *
163                         getClassNodekitCatalog() const
164          Returns an SoNodekitCatalog for this class
165
166     static SoType       getClassTypeId()
167          Returns type identifier for this class.
168
169

CATALOG PARTS

171       ┌──────────────────────────────────────────────────────────┐
172All parts                         
173NULL by 
174Part Name        Part Type         Default Type   Default 
175       │                                                          │
176       │callbackList     NodeKitListPart   --               yes   │
177       │rotator          Separator         --               yes   │
178       │rotatorActive    Separator         --               yes   │
179       │feedback         Separator         --               yes   │
180       │feedbackActive   Separator         --               yes   │
181       │                                                          │
182       └──────────────────────────────────────────────────────────┘
183       ┌───────────────────────────────────────────────────────────────┐
184Extra information for list parts from above table        
185       │                                                               │
186Part Name      Container Type   Permissible Types              
187       │                                                               │
188       │callbackList   Separator        Callback, EventCallback        │
189       │                                                               │
190       └───────────────────────────────────────────────────────────────┘

DRAGGER RESOURCES

192       .in 0n+.5i
193     Resource:         rotateDiscRotator
194       .in 0n+.5i
195     Part:             rotator
196     Appearance:       white  cylinder  (with  axis along z-direction) made of
197     lines
198     Description:      picking this initiates rotation
199
200                         .in 0n+.5i
201     Resource:         rotateDiscRotatorActive
202                         .in 0n+.5i
203     Part:             rotatorActive
204     Appearance:       yellow version of rotator, with added yellow cube
205     Description:      displayed while in motion instead of the rotator
206
207                         .in 0n+.5i
208     Resource:         rotateDiscFeedback
209                         .in 0n+.5i
210     Part:             feedback
211     Appearance:       thin purple line along local z-axis
212     Description:      shows center of rotation when not moving
213
214                         .in 0n+.5i
215     Resource:         rotateDiscFeedbackActive
216                         .in 0n+.5i
217     Part:             feedbackActive
218     Appearance:       thin, slightly brighter purple line along local z-axis
219     Description:      shows center of rotation when moving
220
221

FILE FORMAT/DEFAULTS

223       RotateDiscDragger {
224          renderCaching       AUTO
225          boundingBoxCaching  AUTO
226          renderCulling       AUTO
227          pickCulling         AUTO
228          isActive            FALSE
229          rotation            0 0 1  0
230          callbackList        NULL
231          rotator             <rotateDiscRotator resource>
232          rotatorActive       <rotateDiscRotatorActive resource>
233          feedback            <rotateDiscFeedback resource>
234          feedbackActive      <rotateDiscFeedbackActive resource>
235     }
236

SEE ALSO

238       SoInteractionKit, SoDragger,  SoCenterballDragger,  SoDirectionalLight‐
239       Dragger,    SoDragPointDragger,    SoHandleBoxDragger,   SoJackDragger,
240       SoPointLightDragger, SoRotateCylindricalDragger, SoRotateSphericalDrag‐
241       ger, SoScale1Dragger, SoScale2Dragger, SoScale2UniformDragger, SoScale‐
242       UniformDragger, SoSpotLightDragger, SoTabBoxDragger, SoTabPlaneDragger,
243       SoTrackballDragger,     SoTransformBoxDragger,    SoTransformerDragger,
244       SoTranslate1Dragger, SoTranslate2Dragger
245
246
247
248
249                                                    SoRotateDiscDragger(3IV)()
Impressum