SoSceneKit(3IV)

SoSceneKit (SoSceneKit) - scene nodekit class

Showing IRIX 6.5.30 (default release). Added in IRIX 6.5.22.

NAME
     SoSceneKit (SoSceneKit) - scene nodekit class

INHERITS FROM
     SoBase > SoFieldContainer > SoNode > SoBaseKit > SoSceneKit

SYNOPSIS
     #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)

     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.
     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.


FUNCTIONS
     SoSceneKit *              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).
     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