Click or drag to resize
SoLightKit Class

Light nodekit class.

Inheritance Hierarchy

Namespace: OIV.Inventor.Nodekits
Assembly: OIV.Inventor (in OIV.Inventor.dll) Version: 2024.2.2.0 (10.16.2.0)
Syntax
public class SoLightKit : SoBaseKit

The SoLightKit type exposes the following members.

Constructors
  NameDescription
Public methodSoLightKit

Constructor.

Top
Methods
  NameDescription
Public methodAffectsState

Returns true if a node has an effect on the state during traversal.

(Inherited from SoNode.)
Public methodCallback
(Inherited from SoBaseKit.)
Public methodCopy
Calls Copy(false).
(Inherited from SoNode.)
Public methodCopy(Boolean)

Creates and returns an exact copy of the node.

(Inherited from SoNode.)
Public methodCopyFieldValues(SoFieldContainer)
Calls CopyFieldValues(fc, false).
(Inherited from SoFieldContainer.)
Public methodCopyFieldValues(SoFieldContainer, Boolean)

Copies the contents of fc's fields into this object's fields.

(Inherited from SoFieldContainer.)
Public methodCreatePathToPart(String, Boolean)
Calls CreatePathToPart(partName, makeIfNeeded, (OIV.Inventor.SoPath ^)nullptr).
(Inherited from SoBaseKit.)
Public methodCreatePathToPart(String, Boolean, SoPath)

Returns a path that begins at this nodekit and ends at partName.

(Inherited from SoBaseKit.)
Public methodDispose
Releases all resources used by SoDisposable.
(Inherited from SoDisposable.)
Public methodDistribute
(Inherited from SoNode.)
Public methodDoAction
(Inherited from SoBaseKit.)
Public methodEnableNotify

Notification at this Field Container is enabled (if flag == true) or disabled (if flag == false).

(Inherited from SoFieldContainer.)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodFieldsAreEqual

Returns true if this object's fields are exactly equal to fc's fields.

(Inherited from SoFieldContainer.)
Public methodGet

Returns the values of the fields of this object in the Open Inventor ASCII file format in the given string.

(Inherited from SoFieldContainer.)
Public methodGetAllFields

Returns a list of fields, including the eventIn's and eventOut's.

(Inherited from SoFieldContainer.)
Public methodGetAlternateRep

This method is called by actions to allow the node to provide an "alternate representation" when appropriate (typically depending on the action type).

(Inherited from SoNode.)
Public methodGetBoundingBox
(Inherited from SoBaseKit.)
Public methodStatic memberGetClassNodekitCatalog

Returns the OIV.Inventor.Nodekits.SoNodekitCatalog for this class.

Public methodGetEventIn

Returns a the eventIn with the given name.

(Inherited from SoFieldContainer.)
Public methodGetEventOut

Returns the eventOut with the given name.

(Inherited from SoFieldContainer.)
Public methodGetField

Returns a the field of this object whose name is fieldName.

(Inherited from SoFieldContainer.)
Public methodGetFieldName

Returns the name of the given field in the fieldName argument.

(Inherited from SoFieldContainer.)
Public methodGetFields

Appends references to all of this object's fields to resultList, and returns the number of fields appended.

(Inherited from SoFieldContainer.)
Public methodGetHashCode
Overrides GetHashCode().
(Inherited from SoNetBase.)
Public methodGetMatrix
(Inherited from SoBaseKit.)
Public methodGetName

Returns the name of an instance.

(Inherited from SoBase.)
Public methodGetNodekitCatalog (Inherited from SoBaseKit.)
Public methodGetPart

Searches the nodekit catalog (and those of all nested nodekits) for the part named partName.

(Inherited from SoBaseKit.)
Public methodGetPartString

Given a node or a path to a node, checks if the part exists in the nodekit, in a nested nodekit, or an element of a list part.

(Inherited from SoBaseKit.)
Public methodGetPrimitiveCount
(Inherited from SoBaseKit.)
Public methodGetRenderEngineMode

Returns the supported Render engine mode.

(Inherited from SoNode.)
Public methodGetRenderUnitID
(Inherited from SoNode.)
Public methodGetStringName (Inherited from SoBase.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetViewportIsEnabled (Inherited from SoBaseKit.)
Public methodGetViewportOrigin (Inherited from SoBaseKit.)
Public methodGetViewportSize (Inherited from SoBaseKit.)
Public methodGLRender
(Inherited from SoBaseKit.)
Public methodGLRenderBelowPath
(Inherited from SoNode.)
Public methodGLRenderInPath
(Inherited from SoNode.)
Public methodGLRenderOffPath
(Inherited from SoNode.)
Public methodGrabEventsCleanup
(Inherited from SoNode.)
Public methodGrabEventsSetup
(Inherited from SoNode.)
Public methodHandleEvent
(Inherited from SoBaseKit.)
Public methodHasDefaultValues

Returns true if all of the object's fields have their default values.

(Inherited from SoFieldContainer.)
Public methodIsBoundingBoxIgnoring

Returns true if bounding box computation should be ignored during OIV.Inventor.Actions.SoGetBoundingBoxAction traversal.

(Inherited from SoBaseKit.)
Public methodIsNotifyEnabled

Notification is the process of telling interested objects that this object has changed.

(Inherited from SoFieldContainer.)
Public methodIsOverride

Returns the state of the override flag.

(Inherited from SoNode.)
Public methodIsSynchronizable

Gets the ScaleViz synchronizable state of this object.

(Inherited from SoBase.)
Public methodPick
(Inherited from SoNode.)
Public methodRayPick
(Inherited from SoBaseKit.)
Public methodSearch
(Inherited from SoBaseKit.)
Public methodSet(String)

This function allows field values of parts (nodes) to be set in several different parts simultaneously.

(Inherited from SoBaseKit.)
Public methodSet(String, String)

This function allows field values of parts (nodes) to be set.

(Inherited from SoBaseKit.)
Public methodSetName (Inherited from SoBase.)
Public methodSetOverride

Turns the override flag on or off.

(Inherited from SoNode.)
Public methodSetPart

Inserts the given node (not a copy) as the new part specified by partName.

(Inherited from SoBaseKit.)
Public methodSetSynchronizable

Sets this to be a ScaleViz synchronizable object.

(Inherited from SoBase.)
Public methodSetToDefaults

Sets all fields in this object to their default values.

(Inherited from SoFieldContainer.)
Public methodToString
Converts this SoBase structure to a human readable string.
(Inherited from SoBase.)
Public methodTouch

Marks an instance as modified, simulating a change to it.

(Inherited from SoNode.)
Public methodWrite
(Inherited from SoBaseKit.)
Top
Properties
  NameDescription
Public propertyboundingBoxIgnoring

Whether to ignore this node during bounding box traversal.

(Inherited from SoBaseKit.)
Public propertyIsDisposable
ISafeDisposable interface implementation.
(Inherited from SoDisposable.)
Public propertyUserData
Gets or sets the user data to be contained by the field container.
(Inherited from SoFieldContainer.)
Top
Remarks

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

OIV.Inventor.Nodekits.SoLightKit creates an OIV.Inventor.Nodes.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.

OIV.Inventor.Nodekits.SoLightKit also adds two private parts. An OIV.Inventor.Nodes.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 OIV.Inventor.Nodes.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.

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

PARTS

(OIV.Inventor.Nodes.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 OIV.Inventor.Nodes.SoTransformSeparator. The transform part is NULL by default. If you ask for transform using OIV.Inventor.Nodekits.SoBaseKit.GetPart(System.String, System.Boolean), an OIV.Inventor.Nodes.SoTransform will be returned. But you may set the part to be any subclass of OIV.Inventor.Nodes.SoTransform. For example, set the transform to be an SoDragPointManip and the light to be an OIV.Inventor.Nodes.SoPointLight. Then you can move the light by dragging the manipulator with the mouse.

(OIV.Inventor.Nodes.SoLight) light The light node for this nodekit. This can be set to any node derived from OIV.Inventor.Nodes.SoLight. An OIV.Inventor.Nodes.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.

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

FILE FORMAT/DEFAULT

LightKit {
callbackList NULL
transform NULL
light DirectionalLight {
}
icon NULL
}

CATALOG PARTS

All Parts
Part NamePart TypeDefault TypeNULL Default
callbackList NodeKitListPart yes
transform Transform yes
light Light DirectionalLight no
icon Node Cube yes

Extra Information for List Parts from Above Table
Part NameContainer TypePossible Types
callbackList Separator Callback, EventCallback

See Also