SoSeparatorKit — separator nodekit class
Contents
Catalog Parts
┌────────────────────────────────────────────────────────────────┐
│ Allparts │
│ NULLby │
│ PartNamePartTypeDefaultTypeDefault │
│ │
│ callbackList NodeKitListPart -- yes │
│ pickStyle PickStyle -- yes │
│ appearance AppearanceKit -- yes │
│ units Units -- yes │
│ transform Transform -- yes │
│ texture2Transform Texture2Transform -- yes │
│ childList NodeKitListPart -- yes │
│ │
└────────────────────────────────────────────────────────────────┘
┌────────────────────────────────────────────────────────────────┐
│ Extrainformationforlistpartsfromabovetable │
│ │
│ PartNameContainerTypePermissibleTypes │
│ │
│ callbackList Separator Callback, EventCallback │
│ childList Separator ShapeKit, SeparatorKit │
│ │
└────────────────────────────────────────────────────────────────┘
Description
A nodekit that is used for creating nodekit hierarchies. SoSeparatorKit 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.
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.
Fields
SoSFEnumrenderCaching
Set render caching mode. Default is AUTO.
SoSFEnumboundingBoxCaching
Set bounding box caching mode. Default is ON. Setting this value to AUTO is equivalent to ON—automaticcullingisnotimplemented.SoSFEnumrenderCulling
Set render culling mode. Default is OFF. Setting this value to AUTO is equivalent to ON—automaticcullingisnotimplemented.SoSFEnumpickCulling
Set pick culling mode. Default is AUTO.
File Format/Defaults
SeparatorKit{renderCachingAUTOboundingBoxCachingAUTOrenderCullingAUTOpickCullingAUTOcallbackListNULLpickStyleNULLappearanceNULLunitsNULLtransformNULLtexture2TransformNULLchildListNULL}Inherits From
SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSeparatorKit
Methods
SoSeparatorKit()
Constructor.
staticconstSoNodekitCatalog*getClassNodekitCatalog()const
Returns an SoNodekitCatalog for the class SoSeparatorKit.
staticSoTypegetClassTypeId()
Returns type identifier for this class.
Name
SoSeparatorKit — separator nodekit class
Parts
(SoPickStyle)pickStyle
An SoPickStyle property node that can be used to set the picking style of its children. This part is
NULL by default, but is created automatically if necessary.
(SoAppearanceKit)appearance
An SoAppearanceKit nodekit which can be used to set the appearance properties of its children. This
part is NULL by default, but is created automatically if necessary.
(SoUnits)units
An SoUnits node which can be used to set the types of units, (e.g., feet), of its children. This part
is NULL by default, but is created automatically if necessary.
(SoTransform)transform
An SoTransform node which can be used to set the overall position, orientation, and scale of its
children. This part is NULL by default, but is created automatically if necessary.
(SoTexture2Transform)texture2Transform
An SoTexture2Transform node which can be used to apply a transformation to any textures used by its
children. This part is NULL by default, but is created automatically if necessary.
(SoNodeKitListPart)childList
This part contains the children nodekits of this SoSeparatorKit. This part is a listpart and can have
multiple children. This part is NULL by default, but is created automatically when the first child is
added to the childList. Also, when asked to build a member of the childList, the separatorKit will
build an SoShapeKit by default. So if the childList part is NULL, and you call:
getPart("childList[0]",TRUE), the separator kit will create the childList and add an SoShapeKit as
the new element in the list.
See Also
SoAppearanceKit,SoBaseKit,SoCameraKit,SoLightKit,SoNodeKit,SoNodeKitDetail,SoNodeKitListPart,SoNodeKitPath,SoNodekitCatalog,SoSceneKit,SoShapeKit,SoWrapperKitSoSeparatorKit(3IV)()
Synopsis
#include<Inventor/nodekits/SoSeparatorKit.h>enumCacheEnabled{SoSeparatorKit::OFF Never build or use a cache
SoSeparatorKit::ON Always try to build a cache
SoSeparatorKit::AUTO Automatic caching
}
Fields from class SoSeparatorKit:
SoSFEnumrenderCachingSoSFEnumboundingBoxCachingSoSFEnumrenderCullingSoSFEnumpickCulling
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()staticconstSoNodekitCatalog*getClassNodekitCatalog()conststaticSoTypegetClassTypeId()
Methods from class SoBaseKit:
virtualconstSoNodekitCatalog*getNodekitCatalog()constvirtualSoNode*getPart(constSbName&partName,SbBoolmakeIfNeeded)SbStringgetPartString(constSoBase*part)virtualSoNodeKitPath*createPathToPart(constSbName&partName,SbBoolmakeIfNeeded,constSoPath*pathToExtend=NULL)virtualSbBoolsetPart(constSbName&partName,SoNode*newPart)SbBoolset(char*partName,char*parameters)SbBoolset(char*nameValuePairs)staticSbBoolisSearchingChildren()staticvoidsetSearchingChildren(SbBoolnewVal)
Methods from class SoNode:
voidsetOverride(SbBoolstate)SbBoolisOverride()constSoNode*copy(SbBoolcopyConnections=FALSE)constvirtualSbBoolaffectsState()conststaticSoNode*getByName(constSbName&name)staticintgetByName(constSbName&name,SoNodeList&list)
Methods from class SoFieldContainer:
voidsetToDefaults()SbBoolhasDefaultValues()constSbBoolfieldsAreEqual(constSoFieldContainer*fc)constvoidcopyFieldValues(constSoFieldContainer*fc,SbBoolcopyConnections=FALSE)voidget(SbString&fieldDataString)virtualintgetFields(SoFieldList&resultList)constvirtualSoField*getField(constSbName&fieldName)constSbBoolgetFieldName(constSoField*field,SbName&fieldName)constSbBoolisNotifyEnabled()constSbBoolenableNotify(SbBoolflag)
Methods from class SoBase:
voidref()voidunref()constvoidunrefNoDelete()constvoidtouch()virtualSoTypegetTypeId()constSbBoolisOfType(SoTypetype)constvirtualvoidsetName(constSbName&name)virtualSbNamegetName()const
Macros from class SoBaseKit:
SO_GET_PART(kit,partName,partClass)SO_CHECK_PART(kit,partName,partClass)