1SoScaleUniformDragger(3IV)()                      SoScaleUniformDragger(3IV)()
2
3
4

NAME

6       SoScaleUniformDragger  —  object you can scale uniformly in 3D by drag‐
7       ging with the mouse
8

INHERITS FROM

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

SYNOPSIS

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

DESCRIPTION

121       SoScaleUniformDragger  is a simple dragger that scales uniformly in all
122       3 dimensions when dragged with the mouse. The local space is determined
123       by  its location in the scene graph. Transformation nodes placed before
124       it will affect both the dragger and the plane of motion.
125
126       This node has a scaleFactor field which always  reflects  its  size  in
127       local space. If you set the field, the dragger will change accordingly.
128       You can also connect fields of other nodes or engines from this one  to
129       make them follow the dragger's motion.
130
131       This  dragger  contains four parts, scaler, scalerActive, feedback, and
132       feedbackActive.
133
134       Each of these is set by default from a resource described in the  Drag‐
135       ger  Resources section of the online reference page for this class. You
136       can change the parts in any instance of this dragger using setPart().
137
138       You can make your program use different default resources for the parts
139       by  copying  the file /usr/share/data/draggerDefaults/scaleUniformDrag‐
140       ger.iv into your own directory, editing the file, and then setting  the
141       environment variable SO_DRAGGER_DIR to be a path to that directory.
142

CATALOG PARTS

144       ┌──────────────────────────────────────────────────────────┐
145All parts                         
146NULL by 
147Part Name        Part Type         Default Type   Default 
148       │                                                          │
149       │callbackList     NodeKitListPart   --               yes   │
150       │scaler           Separator         --               yes   │
151       │scalerActive     Separator         --               yes   │
152       │feedback         Separator         --               yes   │
153       │feedbackActive   Separator         --               yes   │
154       │                                                          │
155       └──────────────────────────────────────────────────────────┘
156       ┌───────────────────────────────────────────────────────────────┐
157Extra information for list parts from above table        
158       │                                                               │
159Part Name      Container Type   Permissible Types              
160       │                                                               │
161       │callbackList   Separator        Callback, EventCallback        │
162       │                                                               │
163       └───────────────────────────────────────────────────────────────┘

DRAGGER RESOURCES

165       .in 0n+.5i
166     Resource:         scaleUniformScaler
167       .in 0n+.5i
168     Part:             scaler
169     Appearance:       8  small  white  cubes at the corners of a larger 2x2x2
170     cube.
171     Description:      picking this initiates the scaling
172
173                         .in 0n+.5i
174     Resource:         scaleUniformScalerActive
175                         .in 0n+.5i
176     Part:             scalerActive
177     Appearance:       yellow version of scaler, but  with  extra  yellow  box
178     connecting corners
179     Description:      displayed instead of scaler while in motion
180
181                         .in 0n+.5i
182     Resource:         scaleUniformFeedback
183                         .in 0n+.5i
184     Part:             feedback
185     Appearance:       thin purple 3-D crosshair
186     Description:      shows center of scale when still
187
188                         .in 0n+.5i
189     Resource:         scaleUniformFeedbackActive
190                         .in 0n+.5i
191     Part:             feedbackActive
192     Appearance:       thin, slightly brighter purple 3-D crosshair
193     Description:      shows center of scale while in motion
194
195

FILE FORMAT/DEFAULTS

197       ScaleUniformDragger {
198          renderCaching       AUTO
199          boundingBoxCaching  AUTO
200          renderCulling       AUTO
201          pickCulling         AUTO
202          isActive            FALSE
203          scaleFactor         1 1 1
204          callbackList        NULL
205          scaler              <scaleUniformScaler resource>
206          scalerActive        <scaleUniformScalerActive resource>
207          feedback            <scaleUniformFeedback resource>
208          feedbackActive      <scaleUniformFeedbackActive resource>
209     }
210

SEE ALSO

212       SoInteractionKit,  SoDragger,  SoCenterballDragger, SoDirectionalLight‐
213       Dragger,   SoDragPointDragger,    SoHandleBoxDragger,    SoJackDragger,
214       SoPointLightDragger,  SoRotateCylindricalDragger,  SoRotateDiscDragger,
215       SoRotateSphericalDragger,       SoScale1Dragger,       SoScale2Dragger,
216       SoScale2UniformDragger,   SoSpotLightDragger,  SoTabBoxDragger,  SoTab‐
217       PlaneDragger, SoTrackballDragger, SoTransformBoxDragger, SoTransformer‐
218       Dragger, SoTranslate1Dragger, SoTranslate2Dragger
219
220
221
222
223                                                  SoScaleUniformDragger(3IV)()
Impressum