SoSceneKit(3IV)NAMESoSceneKit (SoSceneKit) - scene nodekit class
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSceneKitSYNOPSIS
#include <Inventor_c/nodekits/SoSceneKit.h>
Parts from class SoSceneKit:
(SoNodeKitListPart) cameraList
(SoNodeKitListPart) lightList
(SoNodeKitListPart) childList
Parts from class SoBaseKit:
(SoNodeKitListPart) callbackList
Functions from class SoSceneKit:
SoSceneKit * SoSceneKitCreate()
const SoNodekitCatalog * SoSceneKitGetClassNkitCat()
int SoSceneKitGetCamNum(SoSceneKit *this)
void SoSceneKitSetCamNum(SoSceneKit *this, int
camNum)
SoType SoSceneKitGetClassTypeId()
Functions from class SoBaseKit:
const SoNodekitCatalog * SoSceneKitGetCat(const SoSceneKit *this)
SoNode * SoSceneKitGetPart(SoSceneKit *this, const char
*partName, SbBool makeIfNeeded)
SbString SoSceneKitGetPartString(SoSceneKit *this, const
SoBase *part)
SoNodeKitPath * SoSceneKitCreatePathToPart(SoSceneKit *this,
const char *partName, SbBool makeIfNeeded,
const SoPath *pathToExtend = NULL)
SbBool SoSceneKitSetPart(SoSceneKit *this, const char
*partName, SoNode *newPart)
SbBool SoSceneKitSet(SoSceneKit *this, char *partName,
char *parameters)
SbBool SoSceneKitSet2(SoSceneKit *this, char
*nameValuePairs)
SbBool SoSceneKitIsSearchingChildren()
void SoSceneKitSetSearchingChildren(SbBool newVal)
Functions from class SoNode:
void SoSceneKitSetOverride(SoSceneKit *this, SbBool state)
SbBool SoSceneKitIsOverride(const SoSceneKit *this)
Page 1SoSceneKit(3IV)
SoNode * SoSceneKitCopy(const SoSceneKit *this, SbBool
copyConnections = FALSE)
SbBool SoSceneKitAffectsState(const SoSceneKit *this)
SoNode * SoSceneKitGetByName(const char *name)
int SoSceneKitGetByNameList(const char *name, SoNodeList
*list)
Functions from class SoFieldContainer:
void SoSceneKitSetToDflts(SoSceneKit *this)
SbBool SoSceneKitHasDfltVals(const SoSceneKit *this)
SbBool SoSceneKitFldsAreEq(const SoSceneKit *this, const
SoFieldContainer *fc)
void SoSceneKitCopyFieldVals(SoSceneKit *this, const
SoFieldContainer *fc, SbBool copyConnections =
FALSE)
void SoSceneKitGet(SoSceneKit *this, SbString
*fieldDataString)
int SoSceneKitGetFields(const SoSceneKit *this,
SoFieldList *resultList)
SoField * SoSceneKitGetField(const SoSceneKit *this, const char
*fieldName)
SbBool SoSceneKitGetFieldName(const SoSceneKit *this, const
SoField *field, SbName *fieldName)
SbBool SoSceneKitIsNotifyEnabled(const SoSceneKit *this)
SbBool SoSceneKitEnableNotify(SoSceneKit *this, SbBool flag)
Functions from class SoBase:
void SoSceneKitRef(SoSceneKit *this)
void SoSceneKitUnref(const SoSceneKit *this)
void SoSceneKitUnrefNoDelete(const SoSceneKit *this)
void SoSceneKitTouch(SoSceneKit *this)
SoType SoSceneKitGetTypeId(const SoSceneKit *this)
SbBool SoSceneKitIsOfType(const SoSceneKit *this, SoType
type)
void SoSceneKitSetName(SoSceneKit *this, const char *name)
SbName SoSceneKitGetName(const SoSceneKit *this)
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
SoSceneKitSetCameraNumber(), and the scene kit will set the switch to
make that camera active.
Page 2SoSceneKit(3IV)
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
(SoNodeKitListPart) 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 SoSceneKitSetPart(mySceneKit, "cameraList[0]",
myNewCamera).
(SoNodeKitListPart) 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.
(SoNodeKitListPart) 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:
SoSceneKitGetPart(mySceneKit, "childList[0]", TRUE). the scene kit
will create the childList and add an SoShapeKit as the new element
in the list.
FUNCTIONSSoSceneKit * SoSceneKitCreate()
Constructor.
const SoNodekitCatalog * SoSceneKitGetClassNkitCat()
Returns an SoNodekitCatalog for the class SoSceneKit.
int SoSceneKitGetCamNum(SoSceneKit *this)
void SoSceneKitSetCamNum(SoSceneKit *this, int
camNum)
Gets and sets current camera index. This index refers to which child
is active in the cameraList part (SoSwitch node).
Page 3SoSceneKit(3IV)
SoType SoSceneKitGetClassTypeId()
Returns type identifier for this class.
CATALOG PARTS
_________________________________________________________
All parts
NULL by
Part Name Part Type Default Type Default
callbackList NodeKitListPart -- yes
cameraList NodeKitListPart -- yes
lightList NodeKitListPart -- yes
childList NodeKitListPart -- yes
_________________________________________________________
|
|
________________________________________________________________
Extra information for list parts from above table
Part Name Container Type Permissible Types
Callback, EventCallback
callbackList Separator
CameraKit
cameraList Switch
LightKit
lightList Group
ShapeKit, SeparatorKit
childList Group
________________________________________________________________
|
|
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
Page 4