1SoSeparatorKit(3IV)() SoSeparatorKit(3IV)()
2
3
4
6 SoSeparatorKit — separator nodekit class
7
9 SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSeparatorKit
10
12 #include <Inventor/nodekits/SoSeparatorKit.h>
13
14 enum CacheEnabled {
15 SoSeparatorKit::OFF Never build or use a cache
16 SoSeparatorKit::ON Always try to build a cache
17 SoSeparatorKit::AUTO Automatic caching
18 }
19
20 Fields from class SoSeparatorKit:
21
22 SoSFEnum renderCaching
23 SoSFEnum boundingBoxCaching
24 SoSFEnum renderCulling
25 SoSFEnum pickCulling
26
27 Parts from class SoSeparatorKit:
28
29 (SoPickStyle) pickStyle
30 (SoAppearanceKit) appearance
31 (SoUnits) units
32 (SoTransform) transform
33 (SoTexture2Transform) texture2Transform
34 (SoNodeKitListPart) childList
35
36 Parts from class SoBaseKit:
37
38 (SoNodeKitListPart) callbackList
39
40 Methods from class SoSeparatorKit:
41
42 SoSeparatorKit()
43 static const SoNodekitCatalog *
44 getClassNodekitCatalog() const
45 static SoType getClassTypeId()
46
47 Methods from class SoBaseKit:
48
49 virtual const SoNodekitCatalog *
50 getNodekitCatalog() const
51 virtual SoNode * getPart(const SbName &partName, SbBool
52 makeIfNeeded)
53 SbString getPartString(const SoBase *part)
54 virtual SoNodeKitPath * createPathToPart(const SbName &partName, SbBool
55 makeIfNeeded, const SoPath *pathToExtend =
56 NULL)
57 virtual SbBool setPart(const SbName &partName, SoNode *newPart)
58 SbBool set(char *partName, char *parameters)
59 SbBool set(char *nameValuePairs)
60 static SbBool isSearchingChildren()
61 static void setSearchingChildren(SbBool newVal)
62
63 Methods from class SoNode:
64
65 void setOverride(SbBool state)
66 SbBool isOverride() const
67 SoNode * copy(SbBool copyConnections = FALSE) const
68 virtual SbBool affectsState() const
69 static SoNode * getByName(const SbName &name)
70 static int getByName(const SbName &name, SoNodeList &list)
71
72 Methods from class SoFieldContainer:
73
74 void setToDefaults()
75 SbBool hasDefaultValues() const
76 SbBool fieldsAreEqual(const SoFieldContainer *fc) const
77 void copyFieldValues(const SoFieldContainer *fc, SbBool
78 copyConnections = FALSE)
79 void get(SbString &fieldDataString)
80 virtual int getFields(SoFieldList &resultList) const
81 virtual SoField * getField(const SbName &fieldName) const
82 SbBool getFieldName(const SoField *field, SbName &fieldName)
83 const
84 SbBool isNotifyEnabled() const
85 SbBool enableNotify(SbBool flag)
86
87 Methods from class SoBase:
88
89 void ref()
90 void unref() const
91 void unrefNoDelete() const
92 void touch()
93 virtual SoType getTypeId() const
94 SbBool isOfType(SoType type) const
95 virtual void setName(const SbName &name)
96 virtual SbName getName() const
97
98 Macros from class SoBaseKit:
99
100 SO_GET_PART(kit, partName, partClass)
101 SO_CHECK_PART(kit, partName, partClass)
102
103
105 A nodekit that is used for creating nodekit hierarchies. SoSeparatorKit
106 contains a transform part, a childList part, and a few others in its
107 catalog. The transform part (an SoTransform node) affects all of the
108 children in the childList. Each of these children must be an SoSepara‐
109 torKit or from a class that is derived from SoSeparatorKit (e.g.,
110 SoShapeKit and SoWrapperKit). Since all members of the childList are in
111 turn SoSeparatorKits, and each contains a transform, these nested lists
112 allow you to create a hierarchy of motion, in which each transform
113 affects an entire subgraph of nodekits.
114
115 The other parts added to the catalog for the SoSeparatorKit are pick‐
116 Style, appearance, units and texture2Transform. Furthermore, since
117 SoSeparator is derived from SoBaseKit, it inherits the callbackList
118 part. This is a list of SoCallback and/or SoEventCallback nodes which
119 enable the SoSeparatorKit to perform special callbacks whenever an
120 action is applied to it.
121
122 By creating the pickStyle part, a user can alter the pick style for the
123 entire nodekit hierarchy. The appearance part is an SoAppearanceKit
124 nodekit. Note that all parts contained in the SoAppearanceKit catalog
125 can be accessed as if they were part of the SoSeparatorKit. For exam‐
126 ple:
127 myMtl = mySepKit->getPart("material",TRUE)
128 and
129 mySepKit->setPart("material",myMtl)
130 See SoBaseKit for further explanation.
131
133 SoSFEnum renderCaching
134 Set render caching mode. Default is AUTO.
135
136 SoSFEnum boundingBoxCaching
137 Set bounding box caching mode. Default is ON. Setting this value to
138 AUTO is equivalent to ON — automatic culling is not implemented.
139
140 SoSFEnum renderCulling
141 Set render culling mode. Default is OFF. Setting this value to AUTO
142 is equivalent to ON — automatic culling is not implemented.
143
144 SoSFEnum pickCulling
145 Set pick culling mode. Default is AUTO.
146
147
149 (SoPickStyle) pickStyle
150 An SoPickStyle property node that can be used to set the picking
151 style of its children. This part is NULL by default, but is created
152 automatically if necessary.
153
154 (SoAppearanceKit) appearance
155 An SoAppearanceKit nodekit which can be used to set the appearance
156 properties of its children. This part is NULL by default, but is
157 created automatically if necessary.
158
159 (SoUnits) units
160 An SoUnits node which can be used to set the types of units, (e.g.,
161 feet), of its children. This part is NULL by default, but is created
162 automatically if necessary.
163
164 (SoTransform) transform
165 An SoTransform node which can be used to set the overall position,
166 orientation, and scale of its children. This part is NULL by
167 default, but is created automatically if necessary.
168
169 (SoTexture2Transform) texture2Transform
170 An SoTexture2Transform node which can be used to apply a transforma‐
171 tion to any textures used by its children. This part is NULL by
172 default, but is created automatically if necessary.
173
174 (SoNodeKitListPart) childList
175 This part contains the children nodekits of this SoSeparatorKit.
176 This part is a list part and can have multiple children. This part
177 is NULL by default, but is created automatically when the first
178 child is added to the childList. Also, when asked to build a member
179 of the childList, the separatorKit will build an SoShapeKit by
180 default. So if the childList part is NULL, and you call: get‐
181 Part("childList[0]", TRUE), the separator kit will create the
182 childList and add an SoShapeKit as the new element in the list.
183
184
186 SoSeparatorKit()
187 Constructor.
188
189 static const SoNodekitCatalog *
190 getClassNodekitCatalog() const
191 Returns an SoNodekitCatalog for the class SoSeparatorKit.
192
193 static SoType getClassTypeId()
194 Returns type identifier for this class.
195
196
198 ┌───────────────────────────────────────────────────────────────┐
199 │ All parts │
200 │ NULL by │
201 │Part Name Part Type Default Type Default │
202 │ │
203 │callbackList NodeKitListPart -- yes │
204 │pickStyle PickStyle -- yes │
205 │appearance AppearanceKit -- yes │
206 │units Units -- yes │
207 │transform Transform -- yes │
208 │texture2Transform Texture2Transform -- yes │
209 │childList NodeKitListPart -- yes │
210 │ │
211 └───────────────────────────────────────────────────────────────┘
212 ┌───────────────────────────────────────────────────────────────┐
213 │ Extra information for list parts from above table │
214 │ │
215 │Part Name Container Type Permissible Types │
216 │ │
217 │callbackList Separator Callback, EventCallback │
218 │childList Separator ShapeKit, SeparatorKit │
219 │ │
220 └───────────────────────────────────────────────────────────────┘
222 SeparatorKit {
223 renderCaching AUTO
224 boundingBoxCaching AUTO
225 renderCulling AUTO
226 pickCulling AUTO
227 callbackList NULL
228 pickStyle NULL
229 appearance NULL
230 units NULL
231 transform NULL
232 texture2Transform NULL
233 childList NULL
234 }
235
237 SoAppearanceKit, SoBaseKit, SoCameraKit, SoLightKit, SoNodeKit, SoN‐
238 odeKitDetail, SoNodeKitListPart, SoNodeKitPath, SoNodekitCatalog,
239 SoSceneKit, SoShapeKit, SoWrapperKit
240
241
242
243
244 SoSeparatorKit(3IV)()