man SoSceneKit () - scene nodekit class

NAME

SoSceneKit - scene nodekit class

INHERITS FROM

SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSceneKit

SYNOPSIS

#include <Inventor/nodekits/SoSceneKit.h> Parts from class SoSceneKit: c } c } cameraList

c } c } lightList

c } c } childList Parts from class SoBaseKit: c } c } callbackList Methods from class SoSceneKit: c } c } SoSceneKit()

c } c } getClassNodekitCatalog() const

c } c } getCameraNumber()

c } c } setCameraNumber(int camNum)

c } c } getClassTypeId() Methods from class SoBaseKit: c } c } getNodekitCatalog() const

c } c } getPart(const SbName &partName, SbBool makeIfNeeded)

c } c } getPartString(const SoBase *part)

c } c } createPathToPart(const SbName &partName, SbBool makeIfNeeded, const SoPath *pathToExtend = NULL)

c } c } setPart(const SbName &partName, SoNode *newPart)

c } c } set(char *partName, char *parameters)

c } c } set(char *nameValuePairs)

c } c } isSearchingChildren()

c } c } setSearchingChildren(SbBool newVal) Methods from class SoNode: c } c } setOverride(SbBool state)

c } c } isOverride() const

c } c } copy(SbBool copyConnections = FALSE) const

c } c } affectsState() const

c } c } getByName(const SbName &name)

c } c } getByName(const SbName &name, SoNodeList &list) Methods from class SoFieldContainer: c } c } setToDefaults()

c } c } hasDefaultValues() const

c } c } fieldsAreEqual(const SoFieldContainer *fc) const

c } c } copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)

c } c } get(SbString &fieldDataString)

c } c } getFields(SoFieldList &resultList) const

c } c } getField(const SbName &fieldName) const

c } c } getFieldName(const SoField *field, SbName &fieldName) const

c } c } isNotifyEnabled() const

c } c } enableNotify(SbBool flag) Methods from class SoBase: c } c } ref()

c } c } unref() const

c } c } unrefNoDelete() const

c } c } touch()

c } c } getTypeId() const

c } c } isOfType(SoType type) const

c } c } setName(const SbName &name)

c } c } getName() const Macros from class SoBaseKit: SO_GET_PART(kit, partName, partClass)

SO_CHECK_PART(kit, partName, partClass)

DESCRIPTION

This nodekit is used to organize camera, (SoCameraKit), light, (SoLightKit), and object, (SoShapeKit, SoSeparatorKit, and SoWrapperKit) nodekits into a scene. A scene is composed of a list of cameras, a list of lights, and a list of children. There are three parts created by this nodekit: cameraList, lightList, and childList. The cameraList part is a list part of SoCameraKit nodes. The list itself is an SoNodeKitListPart, and since only one camera can be active at a time, the container of the list part is an SoSwitch node. Use setCameraNumber(), and the scene kit will set the switch to make that camera active. The lightList part is a list of SoLightKit nodes. The lightList is used to illuminate the objects contained in the childList part. The childList part contains a set of SoSeparatorKit nodes. You can add any kind of SoSeparatorKit to this list, including SoShapeKit and SoWrapperKit. Since each SoSeparatorKit in turn contains a childList, this part is used to describe a hierarchical scene. (See the reference page for SoSeparatorKit). All members of childList are lit by the lights in lightList and rendered by the active camera in cameraList.

PARTS

c } c } cameraList

This part is an SoNodeKitListPart It has a container that is an SoSwitch node. The list may contain only SoCameraKit nodekits. The active child of the SoSwitch is the active camera. This part is NULL by default, but is automatically created whenever you add a camera, as with setPart("cameraList[0]", myNewCamera) . c } c } lightList

This part is an SoNodeKitListPart that uses an defines an SoGroup as its container The list may contain only SoLightKit nodekits. Add SoLightKits to this list and they will light the members of the childList of this SoSceneKit. This part is NULL by default, but is automatically created when you add a light. c } c } childList

This part is an SoNodeKitListPart that uses an SoGroup for its container. The list may contain only SoSeparatorKit nodekits or nodekits derived from SoSeparatorKit (e.g., SoShapeKit and SoWrapperKit). These children represent the objects in the scene. This part is NULL by default, but is automatically created whenever you add a child to the childList. Also, when asked to build a member of the childList, the scenekit will build an SoShapeKit by default. So if the childList part is NULL, and you call: getPart("childList[0]", TRUE) . the scene kit will create the childList and add an SoShapeKit as the new element in the list.

METHODS

c } c } SoSceneKit()

Constructor. c } c } getClassNodekitCatalog() const

Returns an SoNodekitCatalog for the class SoSceneKit. c } c } getCameraNumber()

c } c } setCameraNumber(int camNum)

Gets and sets current camera index. This index refers to which child is active in the cameraList part (SoSwitch node). c } c } getClassTypeId()

Returns type identifier for this class.

CATALOG PARTS

box, tab(!); cb s s s lb lb lb lb lb lb lb lb l l l c. All parts !!!NULL by Part Name!Part Type!Default Type!Default

callbackList!NodeKitListPart!--!yes cameraList!NodeKitListPart!--!yes lightList!NodeKitListPart!--!yes childList!NodeKitListPart!--!yes

box, tab(!); cb s s lb lb lbw(3) l l l. Extra information for list parts from above table Part Name!Container Type!Permissible Types

callbackList!Separator!T{ Callback, EventCallback T} cameraList!Switch!T{ CameraKit T} lightList!Group!T{ LightKit T} childList!Group!T{ ShapeKit, SeparatorKit T}

FILE FORMAT/DEFAULTS

SceneKit {
callbackList	NULL
cameraList	NodeKitListPart {
    containerTypeName "Switch"     childTypeNames "CameraKit"     containerNode     Switch {
	whichChild 0 	CameraKit {
	    camera 	    PerspectiveCamera {
	    }
 	}
    }
 }

lightList NULL childList NULL }

SEE ALSO

SoAppearanceKit, SoBaseKit, SoCameraKit, SoLightKit, SoNodeKit, SoNodeKitDetail, SoNodeKitListPart, SoNodeKitPath, SoNodekitCatalog, SoSeparatorKit, SoShapeKit, SoWrapperKit