man SoLightKit () - light nodekit class


SoLightKit - light nodekit class


SoBase > SoFieldContainer > SoNode > SoBaseKit > SoLightKit


#include <Inventor/nodekits/SoLightKit.h> Parts from class SoLightKit: c } c } transform

c } c } light

c } c } icon Parts from class SoBaseKit: c } c } callbackList Methods from class SoLightKit: c } c } SoLightKit()

c } c } getClassNodekitCatalog() const

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)


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.


c } c } 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 getPart(), 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. c } c } 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. c } c } 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.


c } c } SoLightKit()

Constructor. c } c } getClassNodekitCatalog() const

Returns an SoNodekitCatalog for the class SoLightKit. c } c } getClassTypeId()

Returns type identifier for this class.


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 transform!Transform!--!yes light!Light!DirectionalLight!no icon!Node!Cube!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}


LightKit {
callbackList	NULL
transform	NULL
light	DirectionalLight {

icon NULL }


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