SoLightKit(3IV)

SoLightKit (SoLtKit) - light nodekit class

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

NAME
     SoLightKit (SoLtKit) - light nodekit class

INHERITS FROM
     SoBase > SoFieldContainer > SoNode > SoBaseKit > SoLightKit

SYNOPSIS
     #include <Inventor_c/nodekits/SoLightKit.h>

     typedef SoLightKit  SoLtKit

          Parts from class SoLightKit:

     (SoTransform)       transform
     (SoLight)           light
     (SoNode)            icon

          Parts from class SoBaseKit:

     (SoNodeKitListPart)  callbackList

          Functions from class SoLightKit:

     SoLightKit *              SoLtKitCreate()
     const SoNodekitCatalog *  SoLtKitGetClassNkitCat()
     SoType                    SoLtKitGetClassTypeId()

          Functions from class SoBaseKit:

     const SoNodekitCatalog *  SoLtKitGetCat(const SoLtKit *this)
     SoNode *                  SoLtKitGetPart(SoLtKit *this, const char
                                    *partName, SbBool makeIfNeeded)
     SbString                  SoLtKitGetPartString(SoLtKit *this, const
                                    SoBase *part)
     SoNodeKitPath *           SoLtKitCreatePathToPart(SoLtKit *this, const
                                    char *partName, SbBool makeIfNeeded, const
                                    SoPath *pathToExtend = NULL)
     SbBool                    SoLtKitSetPart(SoLtKit *this, const char
                                    *partName, SoNode *newPart)
     SbBool                    SoLtKitSet(SoLtKit *this, char *partName, char
                                    *parameters)
     SbBool                    SoLtKitSet2(SoLtKit *this, char
                                    *nameValuePairs)
     SbBool                    SoLtKitIsSearchingChildren()
     void                      SoLtKitSetSearchingChildren(SbBool newVal)

          Functions from class SoNode:

     void                SoLtKitSetOverride(SoLtKit *this, SbBool state)
     SbBool              SoLtKitIsOverride(const SoLtKit *this)
     SoNode *            SoLtKitCopy(const SoLtKit *this, SbBool
                              copyConnections = FALSE)
     SbBool              SoLtKitAffectsState(const SoLtKit *this)
     SoNode *            SoLtKitGetByName(const char *name)
     int                 SoLtKitGetByNameList(const char *name, SoNodeList
                              *list)

          Functions from class SoFieldContainer:

     void                SoLtKitSetToDflts(SoLtKit *this)
     SbBool              SoLtKitHasDfltVals(const SoLtKit *this)
     SbBool              SoLtKitFldsAreEq(const SoLtKit *this, const
                              SoFieldContainer *fc)
     void                SoLtKitCopyFieldVals(SoLtKit *this, const
                              SoFieldContainer *fc, SbBool copyConnections =
                              FALSE)
     void                SoLtKitGet(SoLtKit *this, SbString *fieldDataString)
     int                 SoLtKitGetFields(const SoLtKit *this, SoFieldList
                              *resultList)
     SoField *           SoLtKitGetField(const SoLtKit *this, const char
                              *fieldName)
     SbBool              SoLtKitGetFieldName(const SoLtKit *this, const
                              SoField *field, SbName *fieldName)
     SbBool              SoLtKitIsNotifyEnabled(const SoLtKit *this)
     SbBool              SoLtKitEnableNotify(SoLtKit *this, SbBool flag)

          Functions from class SoBase:

     void                SoLtKitRef(SoLtKit *this)
     void                SoLtKitUnref(const SoLtKit *this)
     void                SoLtKitUnrefNoDelete(const SoLtKit *this)
     void                SoLtKitTouch(SoLtKit *this)
     SoType              SoLtKitGetTypeId(const SoLtKit *this)
     SbBool              SoLtKitIsOfType(const SoLtKit *this, SoType type)
     void                SoLtKitSetName(SoLtKit *this, const char *name)
     SbName              SoLtKitGetName(const SoLtKit *this)


DESCRIPTION
     This nodekit class is used to create light nodes that have a local
     transformation and a geometry icon to represent the light source.
     SoLightKit adds three public parts to the basic nodekit: transform,
     light, and icon.

     SoLightKit creates an SoDirectionalLight as the light part by default -
     all other parts are NULL at creation.

     You can move the light relative to the rest of the scene by creating and
     editing the transform part.

     You can add a geometrical representation for the light by setting the
     icon part to be any scene graph you like.

     SoLightKit also adds two private parts. An SoTransformSeparator contains
     the effect of transform to move only the light and icon, while allowing
     the light to illuminate the rest of the scene. The second private part is
     an SoSeparator, which keeps property nodes within the icon geometry from
     affecting the rest of the scene. It also serves to cache the icon even
     when the light or transform is changing.

     SoLightKit is derived from SoBaseKit and thus also includes a
     callbackList part for adding callback nodes.

PARTS
     (SoTransform)       transform
          This part positions and orients the light and icon relative to the
          rest of the scene. Its effect is kept local to this nodekit by a
          private part of type SoTransformSeparator. The transform part is
          NULL by default. If you ask for transform using SoKitGetPart(), an
          SoTransform will be returned. But you may set the part to be any
          subclass of SoTransform. For example, set the transform to be an
          SoDragPointManip and the light to be an SoPointLight. Then you can
          move the light by dragging the manipulator with the mouse.

     (SoLight)           light
          The light node for this nodekit. This can be set to any node derived
          from SoLight. An SoDirectionalLight is created by default, and it is
          also the type of light returned when the you request that the
          nodekit build a light for you.

     (SoNode)            icon
          This part is a user-supplied scene graph that represents the light
          source. It is NULL by default - an SoCube is created by the lightkit
          when a method requires it to build the part itself.


FUNCTIONS
     SoLightKit *              SoLtKitCreate()
          Constructor.

     const SoNodekitCatalog *  SoLtKitGetClassNkitCat()
          Returns an SoNodekitCatalog for the class SoLightKit.

     SoType                    SoLtKitGetClassTypeId()
          Returns type identifier for this class.


CATALOG PARTS

     _____________________________________________________________
                               All parts
                                                          NULL by
      Part Name      Part Type         Default Type       Default

      callbackList   NodeKitListPart   --                   yes
      transform      Transform         --                   yes
      light          Light             DirectionalLight     no
      icon           Node              Cube                 yes

     _____________________________________________________________
     |







                                                                  |








     ________________________________________________________________
            Extra information for list parts from above table

      Part Name      Container Type   Permissible Types

                                      Callback, EventCallback
      callbackList   Separator

     ________________________________________________________________
     |




                                                                     |






FILE FORMAT/DEFAULTS
     LightKit {
          callbackList  NULL
          transform     NULL
          light         DirectionalLight {
          }

          icon          NULL
     }

SEE ALSO
     SoAppearanceKit, SoBaseKit, SoCameraKit, SoNodeKit, SoNodeKitDetail,
     SoNodeKitListPart, SoNodeKitPath, SoNodekitCatalog, SoSceneKit,
     SoSeparatorKit, SoShapeKit, SoWrapperKit