1SoScaleUniformDragger(3IV)() SoScaleUniformDragger(3IV)()
2
3
4
6 SoScaleUniformDragger — object you can scale uniformly in 3D by drag‐
7 ging with the mouse
8
10 SoBase > SoFieldContainer > SoNode > SoBaseKit > SoInteractionKit >
11 SoDragger > SoScaleUniformDragger
12
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
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
144 ┌──────────────────────────────────────────────────────────┐
145 │ All parts │
146 │ NULL by │
147 │Part 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 ┌───────────────────────────────────────────────────────────────┐
157 │ Extra information for list parts from above table │
158 │ │
159 │Part Name Container Type Permissible Types │
160 │ │
161 │callbackList Separator Callback, EventCallback │
162 │ │
163 └───────────────────────────────────────────────────────────────┘
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
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
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)()