SOSEPARATORKIT(3iv)
π SoSeparatorKit(3IV) π
okay bestie, this is the manual page for SoSeparatorKit(3IV) β and we're about to make it make sense. no cap, it's giving nodekit royalty. π
β¨ NAME β¨
SoSeparatorKit β separator nodekit class. that's the whole vibe. π
πΈ INHERITS FROM πΈ
SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSeparatorKit
so it's literally descended from a whole line of iconic base classes. periodt.
π¦ SYNOPSIS π¦
#include <Inventor/nodekits/SoSeparatorKit.h>
enum CacheEnabled {
SoSeparatorKit::OFF Never build or use a cache
SoSeparatorKit::ON Always try to build a cache
SoSeparatorKit::AUTO Automatic caching
}
Fields from class SoSeparatorKit:
SoSFEnum renderCachingSoSFEnum boundingBoxCachingSoSFEnum renderCullingSoSFEnum pickCulling
Parts from class SoSeparatorKit:
(SoPickStyle) pickStyle(SoAppearanceKit) appearance(SoUnits) units(SoTransform) transform(SoTexture2Transform) texture2Transform(SoNodeKitListPart) childList
Parts from class SoBaseKit:
(SoNodeKitListPart) callbackList
Methods from class SoSeparatorKit:
SoSeparatorKit()static const SoNodekitCatalog * getClassNodekitCatalog() conststatic SoType getClassTypeId()
Methods from class SoBaseKit:
virtual const SoNodekitCatalog * getNodekitCatalog() constvirtual SoNode * getPart(const SbName &partName, SbBool makeIfNeeded)SbString getPartString(const SoBase *part)virtual SoNodeKitPath * createPathToPart(const SbName &partName, SbBool makeIfNeeded, const SoPath *pathToExtend = NULL)virtual SbBool setPart(const SbName &partName, SoNode *newPart)SbBool set(char *partName, char *parameters)SbBool set(char *nameValuePairs)static SbBool isSearchingChildren()static void setSearchingChildren(SbBool newVal)
Methods from class SoNode:
void setOverride(SbBool state)SbBool isOverride() constSoNode * copy(SbBool copyConnections = FALSE) constvirtual SbBool affectsState() conststatic SoNode * getByName(const SbName &name)static int getByName(const SbName &name, SoNodeList &list)
Methods from class SoFieldContainer:
void setToDefaults()SbBool hasDefaultValues() constSbBool fieldsAreEqual(const SoFieldContainer *fc) constvoid copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)void get(SbString &fieldDataString)virtual int getFields(SoFieldList &resultList) constvirtual SoField * getField(const SbName &fieldName) constSbBool getFieldName(const SoField *field, SbName &fieldName) constSbBool isNotifyEnabled() constSbBool enableNotify(SbBool flag)
Methods from class SoBase:
void ref()void unref() constvoid unrefNoDelete() constvoid touch()virtual SoType getTypeId() constSbBool isOfType(SoType type) constvirtual void setName(const SbName &name)virtual SbName getName() const
Macros from class SoBaseKit:
SO_GET_PART(kit, partName, partClass)SO_CHECK_PART(kit, partName, partClass)
π DESCRIPTION π
so SoSeparatorKit is a nodekit that's used for creating nodekit hierarchies. it contains a transform part, a childList part, and a few others in its catalog. the transform part (an SoTransform node) affects all of the children in the childList. each of these children must be an SoSeparatorKit or from a class that is derived from SoSeparatorKit (e.g., SoShapeKit and SoWrapperKit). since all members of the childList are in turn SoSeparatorKits, and each contains a transform, these nested lists allow you to create a hierarchy of motion, in which each transform affects an entire subgraph of nodekits. it's giving fractal energy, fr fr. π
the other parts added to the catalog for the SoSeparatorKit are pickStyle, appearance, units and texture2Transform. furthermore, since SoSeparator is derived from SoBaseKit, it inherits the callbackList part. this is a list of SoCallback and/or SoEventCallback nodes which enable the SoSeparatorKit to perform special callbacks whenever an action is applied to it. π₯
by creating the pickStyle part, a user can alter the pick style for the entire nodekit hierarchy. the appearance part is an SoAppearanceKit nodekit. note that all parts contained in the SoAppearanceKit catalog can be accessed as if they were part of the SoSeparatorKit. for example:
myMtl = mySepKit->getPart("material",TRUE)
and
mySepKit->setPart("material",myMtl)
see SoBaseKit for further explanation. bestie, it's all connected. π«Ά
π FIELDS π
SoSFEnum renderCachingβ Set render caching mode. Default isAUTO. πSoSFEnum boundingBoxCachingβ Set bounding box caching mode. Default isON. Setting this value toAUTOis equivalent toONβ automatic culling is not implemented. not me side-eyeing that limitation. πSoSFEnum renderCullingβ Set render culling mode. Default isOFF. Setting this value toAUTOis equivalent toONβ automatic culling is not implemented. same energy, no cap.SoSFEnum pickCullingβ Set pick culling mode. Default isAUTO. β
π PARTS π
(SoPickStyle) pickStyleβ AnSoPickStyleproperty node that can be used to set the picking style of its children. This part isNULLby default, but is created automatically if necessary. lowkey shy but shows up when needed. π(SoAppearanceKit) appearanceβ AnSoAppearanceKitnodekit which can be used to set the appearance properties of its children. This part isNULLby default, but is created automatically if necessary. main character appearance energy. π(SoUnits) unitsβ AnSoUnitsnode which can be used to set the types of units, (e.g., feet), of its children. This part isNULLby default, but is created automatically if necessary. we love a unit moment. π¦(SoTransform) transformβ AnSoTransformnode which can be used to set the overall position, orientation, and scale of its children. This part isNULLby default, but is created automatically if necessary. it's giving glow-up for your whole subgraph. β¨(SoTexture2Transform) texture2Transformβ AnSoTexture2Transformnode which can be used to apply a transformation to any textures used by its children. This part isNULLby default, but is created automatically if necessary. texture slay. π(SoNodeKitListPart) childListβ This part contains the children nodekits of thisSoSeparatorKit. This part is a list part and can have multiple children. This part isNULLby default, but is created automatically when the first child is added to thechildList. Also, when asked to build a member of thechildList, the separatorKit will build anSoShapeKitby default. So if thechildListpart isNULL, and you call:getPart("childList[0]", TRUE), the separator kit will create thechildListand add anSoShapeKitas the new element in the list. bestie, it literally auto-populates. iconic. π
π METHODS π
SoSeparatorKit()β Constructor. hi hello welcome to the function. πstatic const SoNodekitCatalog * getClassNodekitCatalog() constβ Returns anSoNodekitCatalogfor the classSoSeparatorKit. it's the blueprint, the map, the catalog. πΊοΈstatic SoType getClassTypeId()β Returns type identifier for this class. you are seen, you are typed. π
π₯ CATALOG PARTS π₯
okay so here's the full parts table, exactly as it appears, no edits, no cap:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β All parts β
β NULL by β
β Part Name Part Type Default Type Default β
β β
β callbackList NodeKitListPart -- yes β
β pickStyle PickStyle -- yes β
β appearance AppearanceKit -- yes β
β units Units -- yes β
β transform Transform -- yes β
β texture2Transform Texture2Transform -- yes β
β childList NodeKitListPart -- yes β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
and the extra info for the list parts from above table:
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Extra information for list parts from above table β
β β
β Part Name Container Type Permissible Types β
β β
β callbackList Separator Callback, EventCallback β
β childList Separator ShapeKit, SeparatorKit β
β β
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
periodt. π
π FILE FORMAT/DEFAULTS π
SeparatorKit {
renderCaching AUTO
boundingBoxCaching AUTO
renderCulling AUTO
pickCulling AUTO
callbackList NULL
pickStyle NULL
appearance NULL
units NULL
transform NULL
texture2Transform NULL
childList NULL
}
look at those defaults, all cozy and NULL. π
π SEE ALSO π
SoAppearanceKit, SoBaseKit, SoCameraKit, SoLightKit, SoNodeKit, SoNodeKitDetail, SoNodeKitListPart, SoNodeKitPath, SoNodekitCatalog, SoSceneKit, SoShapeKit, SoWrapperKit
go read those too, bestie. the lore is deep. π§
and that's the whole page, fr fr. this was the SoSeparatorKit(3IV)() manual β source/version and date folded into the footer, but we're saying it with love at the very end: SoSeparatorKit(3IV)(). stay iconic. πβ¨π
π¦ where this page comes from
- debian bookworm: inventor-doc 2.1.5-10+dfsg-2 Β· LGPL-2.0-or-later
- debian trixie: inventor-doc 2.1.6+ds-2 Β· LGPL-2.0-or-later
- ubuntu jammy: inventor-doc 2.1.5-10-24
- ubuntu noble: inventor-doc 2.1.5-10+dfsg-2.1build2 Β· LGPL-2.0-or-later
- ubuntu questing: inventor-doc 2.1.6+ds-2
- ubuntu resolute: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- ubuntu stonking: inventor-doc 2.1.6.1+ds-1 Β· LGPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms