1SoTransformerDragger(3IV)()                        SoTransformerDragger(3IV)()
2
3
4

NAME

6       SoTransformerDragger — box-like object you scale, rotate, and translate
7       by dragging with the mouse
8

INHERITS FROM

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

SYNOPSIS

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

DESCRIPTION

140       SoTransformerDragger is a dragger shaped like a box. It has small cubes
141       at the corners and small balls sticking out of the middle of each face.
142       Click  and  drag any face of the box for 2D translation in the plane of
143       that face.  Drag any corner-cube to scale the box uniformly.  Pick  any
144       of the mid-face balls to rotate the whole dragger about its center.
145
146       The  SoTransformerDragger  uses  locate  highlighting,  so you can tell
147       which part you are about to select before pressing the mouse button. By
148       default, the locate highlight color is gold.
149
150       Click-drag  any  face to translate the dragger within the plane of that
151       face. The face you selected will highlight in yellow. While  you  drag,
152       yellow  feedback arrows display the two directions of motion. Press the
153       <Shift> key and the arrows turn orange; you may now pick between  these
154       two directions to constrain the motion. The direction you move the cur‐
155       sor in will determine which direction is chosen.  Press  the  <Control>
156       key  and  the  dragger  will translate perpendicular to that plane. The
157       translation field is modified as the face is dragged.
158
159       Click a corner to scale the dragger. The corner you selected will  turn
160       yellow and radial lines will indicate that you may move toward and away
161       from the center of the box. Drag radially and you will perform  uniform
162       scale.  Press  the  <Control>  key  to  scale about the opposite corner
163       instead of the center of the box.
164
165       To stretch the dragger non-uniformly, press <Shift> when you  drag  the
166       corner  cube. Now you will see three orange arrows indicating that your
167       gesture will determine which direction to choose. Move the  cursor  and
168       the selected arrow will turn yellow while the others disappear. Now the
169       dragger will stretch only in the direction you selected. Pressing <Con‐
170       trol>  at  the  same  time as <Shift> allows you to stretch the dragger
171       while keeping the opposite side pinned in place. When you drag  a  cor‐
172       ner,  this  modifies the scaleFactor and possibly the translation field
173       of the dragger.
174
175       Click one of the spherical knobs to rotate the dragger. When you  first
176       click,  you'll  see two orange lines and two purple circles. The purple
177       circles indicate the two ways you can rotate.  The  orange  lines  are,
178       once  again,  the  two choices for your mouse gesture. Each line begins
179       you moving around one of the two circles. Once you move the cursor  far
180       enough, the selected line turns yellow and you begin rotating the drag‐
181       ger about the selected circle. The other circle and  line  will  disap‐
182       pear.
183
184       To  perform  unconstrained  ("free") rotation, just press <Shift> while
185       you drag the spherical knob. There will  be  no  choices;  instead  all
186       three  purple  circles  will  be displayed, forming a ball that you can
187       roll around. Regardless of how you rotate, dragging the spherical knobs
188       will modify the rotatation field of the dragger. Depending on how it is
189       centered and what transforms precede it in the scene graph, rotation is
190       likely to affect the translation and scaleFactor fields as well.
191
192       Pressing  the  <Control> key will change the center of rotation in both
193       the constrained and unconstrained (<Shift>) case.  By default, rotation
194       occurs  about the center of the bounding box. With <Control> depressed,
195       rotation occurs about the middle of the opposite side of  the  bounding
196       box.  The  purple feedback will change to illustrate this; the feedback
197       circles increase in size and purple crosshairs sprout at the new  rota‐
198       tional center.
199
200       Ordinarily,  the  knobs  of the dragger are unsquished upon readin from
201       file and when the mouse button is released at the end of a drag. If you
202       want  this  to  happen  more  often,  then  you  should call the method
203       unsquishKnobs.
204
205       As with all draggers, if you change the fields the dragger will move to
206       match the new settings.
207
208       Remember:  This  is  not  an  SoTransform!.  If  you want to move other
209       objects with this dragger, you can either:
210
211       [a] Use an SoTransformerManip, which is subclassed from SoTransform. It
212       creates  one  of  these draggers and uses it as the interface to change
213       its fields. (see the SoTransformerManip man page).
214
215       [b] Use field-to-field connections to connect the fields of this  drag‐
216       ger to those of any SoTransformation node.
217
218       You  can  change  the  parts in any instance of this dragger using set‐
219       Part(). The default part geometries are defined as resources  for  this
220       SoTransformerDragger  class. They are detailed in the Dragger Resources
221       section of the online reference page for this class. You can make  your
222       program  use  different  default resources for the parts by copying the
223       file  /usr/share/data/draggerDefaults/transformerDragger.iv  into  your
224       own directory, editing the file, and then setting the environment vari‐
225       able SO_DRAGGER_DIR to be a path to that directory.
226

FIELDS

228     SoSFRotation        rotation
229          Orientation of the dragger.
230
231     SoSFVec3f           translation
232          Position of the dragger.
233
234     SoSFVec3f           scaleFactor
235          Scale of the dragger.
236
237     SoSFFloat           minDiscRotDot
238          Specifies the minimum dot product between eyeDir and rotPlane normal
239          before  switching  from  record-player-type rotation to rolling-pin-
240          type rotation. This transition is made so that rotations  don't  get
241          screwy  when  the  circle  is  edge-on. Lies in range [0-1]. Best to
242          leave this alone.
243
244

METHODS

246                         SoTransformerDragger()
247          Constructor.
248
249     static const SoNodekitCatalog *
250                         getClassNodekitCatalog() const
251          Returns an SoNodekitCatalog for this class
252
253     static SoType       getClassTypeId()
254          Returns type identifier for this class.
255
256     static const SoNodekitCatalog *
257                         getClassNodekitCatalog() const
258          Returns an SoNodekitCatalog for this class
259
260     static SoType       getClassTypeId()
261          Returns type identifier for this class.
262
263     void                setColinearThreshold(int newVal )
264     int                 getColinearThreshold()
265          When picking a direction for constraining  based  on  gesture,  this
266          paramater  determines  how many pixels must separate two axes before
267          they are regarded as distinct. If they are deemed  "the  same"  then
268          the shorter of the two will be discarded.
269
270     void                setLocateHighlighting(SbBool onOff )
271     SbBool              isLocateHighlighting()
272          Controls  whether  or  not  locate  highlighting is used. Default is
273          TRUE.
274
275     void                unsquishKnobs()
276          Tells the dragger to unsquish its rotation and  scale  knobs  during
277          the  next  traversal. Ordinarily, the knobs are only unsquished upon
278          readin from file and when the mouse button is released at the end of
279          a  drag. If you want this to happen more often, then you should call
280          this method.
281
282

CATALOG PARTS

284       ┌─────────────────────────────────────────────────────────────────┐
285All parts                             
286NULL by 
287Part Name               Part Type         Default Type   Default 
288       │                                                                 │
289       │callbackList            NodeKitListPart   --               yes   │
290       │surroundScale           SurroundScale     --               yes   │
291       │translator1             Separator         --               yes   │
292       │translator1Active       Separator         --               yes   │
293       │translator2             Separator         --               yes   │
294       │translator2Active       Separator         --               yes   │
295       │translator3             Separator         --               yes   │
296       │translator3Active       Separator         --               yes   │
297       │translator4             Separator         --               yes   │
298       │translator4Active       Separator         --               yes   │
299       │translator5             Separator         --               yes   │
300       │translator5Active       Separator         --               yes   │
301       │translator6             Separator         --               yes   │
302       │translator6Active       Separator         --               yes   │
303       │rotator1                Separator         --               yes   │
304       │rotator1Active          Separator         --               yes   │
305       │rotator2                Separator         --               yes   │
306       │rotator2Active          Separator         --               yes   │
307       │rotator3                Separator         --               yes   │
308       │rotator3Active          Separator         --               yes   │
309       │rotator4                Separator         --               yes   │
310       │rotator4Active          Separator         --               yes   │
311       │rotator5                Separator         --               yes   │
312       │rotator5Active          Separator         --               yes   │
313       │rotator6                Separator         --               yes   │
314       │rotator6Active          Separator         --               yes   │
315       │scale1                  Separator         --               yes   │
316       │scale1Active            Separator         --               yes   │
317       │scale2                  Separator         --               yes   │
318       │scale2Active            Separator         --               yes   │
319       │scale3                  Separator         --               yes   │
320       │scale3Active            Separator         --               yes   │
321       │scale4                  Separator         --               yes   │
322       │scale4Active            Separator         --               yes   │
323       │scale5                  Separator         --               yes   │
324       │scale5Active            Separator         --               yes   │
325       │scale6                  Separator         --               yes   │
326       │scale6Active            Separator         --               yes   │
327       │scale7                  Separator         --               yes   │
328       │scale7Active            Separator         --               yes   │
329       │scale8                  Separator         --               yes   │
330       │scale8Active            Separator         --               yes   │
331       │xAxisFeedbackActive     Separator         --               yes   │
332       │xAxisFeedbackSelect     Separator         --               yes   │
333       │xCrosshairFeedback      Separator         --               yes   │
334       │yAxisFeedbackActive     Separator         --               yes   │
335       │yAxisFeedbackSelect     Separator         --               yes   │
336       │yCrosshairFeedback      Separator         --               yes   │
337       │zAxisFeedbackActive     Separator         --               yes   │
338       │zAxisFeedbackSelect     Separator         --               yes   │
339       │zCrosshairFeedback      Separator         --               yes   │
340       │translateBoxFeedback    Separator         --               yes   │
341       │scaleBoxFeedback        Separator         --               yes   │
342       │posXWallFeedback        Separator         --               yes   │
343       │posXRoundWallFeedback   Separator         --               yes   │
344       │posYWallFeedback        Separator         --               yes   │
345       │posYRoundWallFeedback   Separator         --               yes   │
346       │posZWallFeedback        Separator         --               yes   │
347       │posZRoundWallFeedback   Separator         --               yes   │
348       │negXWallFeedback        Separator         --               yes   │
349       │negXRoundWallFeedback   Separator         --               yes   │
350       │negYWallFeedback        Separator         --               yes   │
351       │negYRoundWallFeedback   Separator         --               yes   │
352       │negZWallFeedback        Separator         --               yes   │
353       │negZRoundWallFeedback   Separator         --               yes   │
354       │radialFeedback          Separator         --               yes   │
355       │xCircleFeedback         Separator         --               yes   │
356       │yCircleFeedback         Separator         --               yes   │
357       │zCircleFeedback         Separator         --               yes   │
358       │                                                                 │
359       └─────────────────────────────────────────────────────────────────┘
360       ┌───────────────────────────────────────────────────────────────┐
361Extra information for list parts from above table        
362       │                                                               │
363Part Name      Container Type   Permissible Types              
364       │                                                               │
365       │callbackList   Separator        Callback, EventCallback        │
366       │                                                               │
367       └───────────────────────────────────────────────────────────────┘

DRAGGER RESOURCES

369       .in 0n+.5i
370     Resource:         transformerLocateMaterial
371       .in 0n+.5i
372     Part:             none
373     Appearance:       Gold diffuse and emissive color
374     Description:      Locate highlight color used for all parts.
375
376                         .in 0n+.5i
377     Resource:         transformerOverallStyle
378                         .in 0n+.5i
379     Part:             overallStyle
380     Appearance:       White Low-Complexity lines
381     Description:      If nothing else specified, this is style of the part.
382
383                         .in 0n+.5i
384     Resource:         transformerTranslator1
385                         .in 0n+.5i
386     Part:             translator1
387     Appearance:       White Line-Style Square
388     Description:      Top face of transformer. Picking this initiates  trans‐
389                         lation in x-z plane.
390
391                         .in 0n+.5i
392     Resource:         transformerTranslator2
393                         .in 0n+.5i
394     Part:             translator2
395     Appearance:       White Line-Style Square
396     Description:      Bottom  face  of  transformer.  Picking  this initiates
397                         translation in x-z plane.
398
399                         .in 0n+.5i
400     Resource:         transformerTranslator3
401                         .in 0n+.5i
402     Part:             translator3
403     Appearance:       White Line-Style Square
404     Description:      Left face of transformer. Picking this initiates trans‐
405                         lation in y-z plane.
406
407                         .in 0n+.5i
408     Resource:         transformerTranslator4
409                         .in 0n+.5i
410     Part:             translator4
411     Appearance:       White Line-Style Square
412     Description:      Right  face  of  transformer.  Picking  this  initiates
413                         translation in y-z plane.
414
415                         .in 0n+.5i
416     Resource:         transformerTranslator5
417                         .in 0n+.5i
418     Part:             translator5
419     Appearance:       White Line-Style Square
420     Description:      Front  face  of  transformer.  Picking  this  initiates
421                         translation in x-y plane.
422
423                         .in 0n+.5i
424     Resource:         transformerTranslator6
425                         .in 0n+.5i
426     Part:             translator6
427     Appearance:       White Line-Style Square
428     Description:      Back face of transformer. Picking this initiates trans‐
429                         lation in x-y plane.
430
431                         .in 0n+.5i
432     Resource:         transformerTranslator1Active
433                         .in 0n+.5i
434     Part:             translator1Active
435     Appearance:       Yellow version of transformerTranslator1
436     Description:      Replaces transformerTranslator1 during dragging.
437
438                         .in 0n+.5i
439     Resource:         transformerTranslator2Active
440                         .in 0n+.5i
441     Part:             translator2Active
442     Appearance:       Yellow version of transformerTranslator2
443     Description:      Replaces transformerTranslator2 during dragging.
444
445                         .in 0n+.5i
446     Resource:         transformerTranslator3Active
447                         .in 0n+.5i
448     Part:             translator3Active
449     Appearance:       Yellow version of transformerTranslator3
450     Description:      Replaces transformerTranslator3 during dragging.
451
452                         .in 0n+.5i
453     Resource:         transformerTranslator4Active
454                         .in 0n+.5i
455     Part:             translator4Active
456     Appearance:       Yellow version of transformerTranslator4
457     Description:      Replaces transformerTranslator4 during dragging.
458
459                         .in 0n+.5i
460     Resource:         transformerTranslator5Active
461                         .in 0n+.5i
462     Part:             translator5Active
463     Appearance:       Yellow version of transformerTranslator5
464     Description:      Replaces transformerTranslator5 during dragging.
465
466                         .in 0n+.5i
467     Resource:         transformerTranslator6Active
468                         .in 0n+.5i
469     Part:             translator6Active
470     Appearance:       Yellow version of transformerTranslator6
471     Description:      Replaces transformerTranslator6 during dragging.
472
473                         .in 0n+.5i
474     Resource:         transformerRotator1
475                         .in 0n+.5i
476     Part:             rotator1
477     Appearance:       Green Sphere at end of a stick
478     Description:      Top knob of transformer. Picking this  initiates  rota‐
479                         tion.
480
481                         .in 0n+.5i
482     Resource:         transformerRotator2
483                         .in 0n+.5i
484     Part:             rotator2
485     Appearance:       Green Sphere at end of a stick
486     Description:      Bottom  knob  of  transformer.  Picking  this initiates
487                         rotation.
488
489                         .in 0n+.5i
490     Resource:         transformerRotator3
491                         .in 0n+.5i
492     Part:             rotator3
493     Appearance:       Green Sphere at end of a stick
494     Description:      Left knob of transformer. Picking this initiates  rota‐
495                         tion.
496
497                         .in 0n+.5i
498     Resource:         transformerRotator4
499                         .in 0n+.5i
500     Part:             rotator4
501     Appearance:       Green Sphere at end of a stick
502     Description:      Right knob of transformer. Picking this initiates rota‐
503                         tion.
504
505                         .in 0n+.5i
506     Resource:         transformerRotator5
507                         .in 0n+.5i
508     Part:             rotator5
509     Appearance:       Green Sphere at end of a stick
510     Description:      Front knob of transformer. Picking this initiates rota‐
511                         tion.
512
513                         .in 0n+.5i
514     Resource:         transformerRotator6
515                         .in 0n+.5i
516     Part:             rotator6
517     Appearance:       Green Sphere at end of a stick
518     Description:      Back  knob of transformer. Picking this initiates rota‐
519                         tion.
520
521                         .in 0n+.5i
522     Resource:         transformerRotator1Active
523                         .in 0n+.5i
524     Part:             rotator1Active
525     Appearance:       Yellow version of transformerRotator1
526     Description:      Replaces transformerRotator1 during dragging.
527
528                         .in 0n+.5i
529     Resource:         transformerRotator2Active
530                         .in 0n+.5i
531     Part:             rotator2Active
532     Appearance:       Yellow version of transformerRotator2
533     Description:      Replaces transformerRotator2 during dragging.
534
535                         .in 0n+.5i
536     Resource:         transformerRotator3Active
537                         .in 0n+.5i
538     Part:             rotator3Active
539     Appearance:       Yellow version of transformerRotator3
540     Description:      Replaces transformerRotator3 during dragging.
541
542                         .in 0n+.5i
543     Resource:         transformerRotator4Active
544                         .in 0n+.5i
545     Part:             rotator4Active
546     Appearance:       Yellow version of transformerRotator4
547     Description:      Replaces transformerRotator4 during dragging.
548
549                         .in 0n+.5i
550     Resource:         transformerRotator5Active
551                         .in 0n+.5i
552     Part:             rotator5Active
553     Appearance:       Yellow version of transformerRotator5
554     Description:      Replaces transformerRotator5 during dragging.
555
556                         .in 0n+.5i
557     Resource:         transformerRotator6Active
558                         .in 0n+.5i
559     Part:             rotator6Active
560     Appearance:       Yellow version of transformerRotator6
561     Description:      Replaces transformerRotator6 during dragging.
562
563                         .in 0n+.5i
564     Resource:         transformerScale1
565                         .in 0n+.5i
566     Part:             scale1
567     Appearance:       Small white cube in (+x+y+z) corner of transformer
568     Description:      Picking this initiates scaling.
569
570                         .in 0n+.5i
571     Resource:         transformerScale2
572                         .in 0n+.5i
573     Part:             scale2
574     Appearance:       Small white cube in (+x+y-z) corner of transformer
575     Description:      Picking this initiates scaling.
576
577                         .in 0n+.5i
578     Resource:         transformerScale3
579                         .in 0n+.5i
580     Part:             scale3
581     Appearance:       Small white cube in (+x-y+z) corner of transformer
582     Description:      Picking this initiates scaling.
583
584                         .in 0n+.5i
585     Resource:         transformerScale4
586                         .in 0n+.5i
587     Part:             scale4
588     Appearance:       Small white cube in (+x-y-z) corner of transformer
589     Description:      Picking this initiates scaling.
590
591                         .in 0n+.5i
592     Resource:         transformerScale5
593                         .in 0n+.5i
594     Part:             scale5
595     Appearance:       Small white cube in (-x+y+z) corner of transformer
596     Description:      Picking this initiates scaling.
597
598                         .in 0n+.5i
599     Resource:         transformerScale6
600                         .in 0n+.5i
601     Part:             scale6
602     Appearance:       Small white cube in (-x+y-z) corner of transformer
603     Description:      Picking this initiates scaling.
604
605                         .in 0n+.5i
606     Resource:         transformerScale7
607                         .in 0n+.5i
608     Part:             scale7
609     Appearance:       Small white cube in (-x-y+z) corner of transformer
610     Description:      Picking this initiates scaling.
611
612                         .in 0n+.5i
613     Resource:         transformerScale8
614                         .in 0n+.5i
615     Part:             scale8
616     Appearance:       Small white cube in (-x-y-z) corner of transformer
617     Description:      Picking this initiates scaling.
618
619                         .in 0n+.5i
620     Resource:         transformerScale1Active
621                         .in 0n+.5i
622     Part:             scale1Active
623     Appearance:       Yellow version of transformerScale1Active
624     Description:      Replaces transformerScale1Active during dragging.
625
626                         .in 0n+.5i
627     Resource:         transformerScale2Active
628                         .in 0n+.5i
629     Part:             scale2Active
630     Appearance:       Yellow version of transformerScale2Active
631     Description:      Replaces transformerScale2Active during dragging.
632
633                         .in 0n+.5i
634     Resource:         transformerScale3Active
635                         .in 0n+.5i
636     Part:             scale3Active
637     Appearance:       Yellow version of transformerScale3Active
638     Description:      Replaces transformerScale3Active during dragging.
639
640                         .in 0n+.5i
641     Resource:         transformerScale4Active
642                         .in 0n+.5i
643     Part:             scale4Active
644     Appearance:       Yellow version of transformerScale4Active
645     Description:      Replaces transformerScale4Active during dragging.
646
647                         .in 0n+.5i
648     Resource:         transformerScale5Active
649                         .in 0n+.5i
650     Part:             scale5Active
651     Appearance:       Yellow version of transformerScale5Active
652     Description:      Replaces transformerScale5Active during dragging.
653
654                         .in 0n+.5i
655     Resource:         transformerScale6Active
656                         .in 0n+.5i
657     Part:             scale6Active
658     Appearance:       Yellow version of transformerScale6Active
659     Description:      Replaces transformerScale6Active during dragging.
660
661                         .in 0n+.5i
662     Resource:         transformerScale7Active
663                         .in 0n+.5i
664     Part:             scale7Active
665     Appearance:       Yellow version of transformerScale7Active
666     Description:      Replaces transformerScale7Active during dragging.
667
668                         .in 0n+.5i
669     Resource:         transformerScale8Active
670                         .in 0n+.5i
671     Part:             scale8Active
672     Appearance:       Yellow version of transformerScale8Active
673     Description:      Replaces transformerScale8Active during dragging.
674
675                         .in 0n+.5i
676     Resource:         transformerXAxisFeedbackActive
677                         .in 0n+.5i
678     Part:             xAxisFeedbackActive
679     Appearance:       Yellow arrow along X axis
680     Description:      Displayed when translating if X direction is permitted.
681
682                         .in 0n+.5i
683     Resource:         transformerXAxisFeedbackSelect
684                         .in 0n+.5i
685     Part:             xAxisFeedbackSelect
686     Appearance:       Orange arrow along X axis
687     Description:      Displayed when awaiting gesture to pick between X  axis
688                         and another direction(s).
689
690                         .in 0n+.5i
691     Resource:         transformerYAxisFeedbackActive
692                         .in 0n+.5i
693     Part:             yAxisFeedbackActive
694     Appearance:       Yellow arrow along Y axis
695     Description:      Displayed when translating if Y direction is permitted.
696
697                         .in 0n+.5i
698     Resource:         transformerYAxisFeedbackSelect
699                         .in 0n+.5i
700     Part:             yAxisFeedbackSelect
701     Appearance:       Orange arrow along Y axis
702     Description:      Displayed  when awaiting gesture to pick between Y axis
703                         and another direction(s).
704
705                         .in 0n+.5i
706     Resource:         transformerZAxisFeedbackActive
707                         .in 0n+.5i
708     Part:             zAxisFeedbackActive
709     Appearance:       Yellow arrow along Z axis
710     Description:      Displayed when translating if Z direction is permitted.
711
712                         .in 0n+.5i
713     Resource:         transformerZAxisFeedbackSelect
714                         .in 0n+.5i
715     Part:             zAxisFeedbackSelect
716     Appearance:       Orange arrow along Z axis
717     Description:      Displayed when awaiting gesture to pick between Z  axis
718                         and another direction(s).
719
720                         .in 0n+.5i
721     Resource:         transformerXCrosshairFeedback
722                         .in 0n+.5i
723     Part:             xCrosshairFeedback
724     Appearance:       Yellow crossHair in y-z plane
725     Description:      Displayed when translating perpendicular to y-z plane.
726
727                         .in 0n+.5i
728     Resource:         transformerYCrosshairFeedback
729                         .in 0n+.5i
730     Part:             yCrosshairFeedback
731     Appearance:       Yellow crossHair in x-z plane
732     Description:      Displayed when translating perpendicular to x-z plane.
733
734                         .in 0n+.5i
735     Resource:         transformerZCrosshairFeedback
736                         .in 0n+.5i
737     Part:             zCrosshairFeedback
738     Appearance:       Yellow crossHair in x-y plane
739     Description:      Displayed when translating perpendicular to x-y plane.
740
741                         .in 0n+.5i
742     Resource:         transformerXCircleFeedback
743                         .in 0n+.5i
744     Part:             xCircleFeedback
745     Appearance:       Purple Unit Circle about X axis
746     Description:      Displayed when rotating about X axis
747
748                         .in 0n+.5i
749     Resource:         transformerYCircleFeedback
750                         .in 0n+.5i
751     Part:             yCircleFeedback
752     Appearance:       Purple Unit Circle about Y axis
753     Description:      Displayed when rotating about Y axis
754
755                         .in 0n+.5i
756     Resource:         transformerZCircleFeedback
757                         .in 0n+.5i
758     Part:             zCircleFeedback
759     Appearance:       Purple Unit Circle about Z axis
760     Description:      Displayed when rotating about Z axis
761
762                         .in 0n+.5i
763     Resource:         transformerRadialFeedback
764                         .in 0n+.5i
765     Part:             radialFeedback
766     Appearance:       Purple Rays emanating from center through corners
767     Description:      Displayed when scaling uniformly about center.
768
769                         .in 0n+.5i
770     Resource:         transformerTranslateBoxFeedback
771                         .in 0n+.5i
772     Part:             translateBoxFeedback
773     Appearance:       Purple Box with one bright yellow side
774     Description:      Displayed  when  translating. Automatically oriented so
775                         yellow side matches selected face.
776
777                         .in 0n+.5i
778     Resource:         transformerPosXWallFeedback
779                         .in 0n+.5i
780     Part:             posXWallFeedback
781     Appearance:       Purple Plane along Right side of transformer
782     Description:      Displayed when <Control> scaling and keeping right side
783                         fixed.
784
785                         .in 0n+.5i
786     Resource:         transformerPosYWallFeedback
787                         .in 0n+.5i
788     Part:             posYWallFeedback
789     Appearance:       Purple Plane along Top side of transformer
790     Description:      Displayed  when  <Control> scaling and keeping top side
791                         fixed.
792
793                         .in 0n+.5i
794     Resource:         transformerPosZWallFeedback
795                         .in 0n+.5i
796     Part:             posZWallFeedback
797     Appearance:       Purple Plane along Front side of transformer
798     Description:      Displayed when <Control> scaling and keeping front side
799                         fixed.
800
801                         .in 0n+.5i
802     Resource:         transformerNegXWallFeedback
803                         .in 0n+.5i
804     Part:             negXWallFeedback
805     Appearance:       Purple Plane along Left side of transformer
806     Description:      Displayed  when <Control> scaling and keeping left side
807                         fixed.
808
809                         .in 0n+.5i
810     Resource:         transformerNegYWallFeedback
811                         .in 0n+.5i
812     Part:             negYWallFeedback
813     Appearance:       Purple Plane along Bottom side of transformer
814     Description:      Displayed when <Control>  scaling  and  keeping  bottom
815                         side fixed.
816
817                         .in 0n+.5i
818     Resource:         transformerNegZWallFeedback
819                         .in 0n+.5i
820     Part:             negZWallFeedback
821     Appearance:       Purple Plane along Back side of transformer
822     Description:      Displayed  when <Control> scaling and keeping back side
823                         fixed.
824
825

FILE FORMAT/DEFAULTS

827       TransformerDragger {
828          renderCaching          AUTO
829          boundingBoxCaching     AUTO
830          renderCulling          AUTO
831          pickCulling            AUTO
832          isActive               FALSE
833          translation            0 0 0
834          scaleFactor            1 1 1
835          rotation               0 0 1  0
836          minDiscRotDot          0.025
837          callbackList           NULL
838          surroundScale          NULL
839          translator1            <transformerTranslator1 resource>
840          translator1Active      <transformerTranslator1Active resource>
841          translator2            <transformerTranslator2 resource>
842          translator2Active      <transformerTranslator2Active resource>
843          translator3            <transformerTranslator3 resource>
844          translator3Active      <transformerTranslator3Active resource>
845          translator4            <transformerTranslator4 resource>
846          translator4Active      <transformerTranslator4Active resource>
847          translator5            <transformerTranslator5 resource>
848          translator5Active      <transformerTranslator5Active resource>
849          translator6            <transformerTranslator6 resource>
850          translator6Active      <transformerTranslator6Active resource>
851          rotator1               <transformerRotator1 resource>
852          rotator1Active         <transformerRotator1Active resource>
853          rotator2               <transformerRotator2 resource>
854          rotator2Active         <transformerRotator2Active resource>
855          rotator3               <transformerRotator3 resource>
856          rotator3Active         <transformerRotator3Active resource>
857          rotator4               <transformerRotator4 resource>
858          rotator4Active         <transformerRotator4Active resource>
859          rotator5               <transformerRotator5 resource>
860          rotator5Active         <transformerRotator5Active resource>
861          rotator6               <transformerRotator6 resource>
862          rotator6Active         <transformerRotator6Active resource>
863          scale1                 <transformerScale1 resource>
864          scale1Active           <transformerScale1Active resource>
865          scale2                 <transformerScale2 resource>
866          scale2Active           <transformerScale2Active resource>
867          scale3                 <transformerScale3 resource>
868          scale3Active           <transformerScale3Active resource>
869          scale4                 <transformerScale4 resource>
870          scale4Active           <transformerScale4Active resource>
871          scale5                 <transformerScale5 resource>
872          scale5Active           <transformerScale5Active resource>
873          scale6                 <transformerScale6 resource>
874          scale6Active           <transformerScale6Active resource>
875          scale7                 <transformerScale7 resource>
876          scale7Active           <transformerScale7Active resource>
877          scale8                 <transformerScale8 resource>
878          scale8Active           <transformerScale8Active resource>
879          xAxisFeedbackActive    <transformerXAxisFeedbackActive resource>
880          xAxisFeedbackSelect    <transformerXAxisFeedbackSelect resource>
881          xCrosshairFeedback     <transformerXCrosshairFeedback resource>
882          yAxisFeedbackActive    <transformerYAxisFeedbackActive resource>
883          yAxisFeedbackSelect    <transformerYAxisFeedbackSelect resource>
884          yCrosshairFeedback     <transformerYCrosshairFeedback resource>
885          zAxisFeedbackActive    <transformerZAxisFeedbackActive resource>
886          zAxisFeedbackSelect    <transformerZAxisFeedbackSelect resource>
887          zCrosshairFeedback     <transformerZCrosshairFeedback resource>
888          translateBoxFeedback   <transformerTranslateBoxFeedback resource>
889          scaleBoxFeedback       <transformerScaleBoxFeedback resource>
890          posXWallFeedback       <transformerPosXWallFeedback resource>
891          posXRoundWallFeedback  <transformerPosXRoundWallFeedback resource>
892          posYWallFeedback       <transformerPosYWallFeedback resource>
893          posYRoundWallFeedback  <transformerPosYRoundWallFeedback resource>
894          posZWallFeedback       <transformerPosZWallFeedback resource>
895          posZRoundWallFeedback  <transformerPosZRoundWallFeedback resource>
896          negXWallFeedback       <transformerNegXWallFeedback resource>
897          negXRoundWallFeedback  <transformerNegXRoundWallFeedback resource>
898          negYWallFeedback       <transformerNegYWallFeedback resource>
899          negYRoundWallFeedback  <transformerNegYRoundWallFeedback resource>
900          negZWallFeedback       <transformerNegZWallFeedback resource>
901          negZRoundWallFeedback  <transformerNegZRoundWallFeedback resource>
902          radialFeedback         <transformerRadialFeedback resource>
903          xCircleFeedback        <transformerXCircleFeedback resource>
904          yCircleFeedback        <transformerYCircleFeedback resource>
905          zCircleFeedback        <transformerZCircleFeedback resource>
906          none                   <transformerLocateMaterial resource>
907     }
908

SEE ALSO

910       SoDragger,  SoInteractionKit,  SoLocateHighlight,  SoCenterballDragger,
911       SoDirectionalLightDragger,    SoDragPointDragger,   SoHandleBoxDragger,
912       SoJackDragger, SoPointLightDragger,  SoRotateCylindricalDragger,  SoRo‐
913       tateDiscDragger,       SoRotateSphericalDragger,       SoScale1Dragger,
914       SoScale2Dragger, SoScale2UniformDragger, SoScaleUniformDragger, SoSpot‐
915       LightDragger,  SoTabBoxDragger,  SoTabPlaneDragger, SoTrackballDragger,
916       SoTransformBoxDragger, SoTranslate1Dragger, SoTranslate2Dragger
917
918
919
920
921                                                   SoTransformerDragger(3IV)()
Impressum