LightManagerSupport

public abstract class LightManagerSupport
Base class for implementing custom light managers in .NET

Constructors

LightManagerSupport

#
protected LightManagerSupport()
Default constructor

Methods

DeleteLight

#Since v6.0
public abstract bool DeleteLight(RhinoDoc doc, Light light, bool bUndelete)
Delete light
doc (RhinoDoc)
light (Light)
bUndelete (bool)
If delete is successful, then return true, else return false

GetLights

#Since v6.0
public abstract void GetLights(RhinoDoc doc, ref LightArray light_array)
Get all the lights that are associated to the light manager. The lights are added to the LightArray parameter passed to the GetLights method
doc (RhinoDoc)
light_array (ref LightArray)

GetLightSolo

#Since v6.0
public virtual bool GetLightSolo(RhinoDoc doc, Guid uuid_light)
Returns the value of "ON_LIght::m_bOn" if the light is in solo storage, or false if not in solo storage (ie - this is the checkbox state on the light manager dialog)
doc (RhinoDoc)
uuid_light (Guid)
Returns true if the light is in solo storage, or false if not in solo storage

GroupLights

#Since v6.0
public abstract void GroupLights(RhinoDoc doc, ref LightArray light_array)
Creates a new group with the lights
doc (RhinoDoc)
light_array (ref LightArray)

LightDescription

#Since v6.0
public abstract string LightDescription(RhinoDoc doc, ref Light light)
Gets the string representation of the light description
doc (RhinoDoc)
light (ref Light)
Returns the string representation of the light description

LightFromId

#Since v6.0
public abstract bool LightFromId(RhinoDoc doc, Guid uuid, ref Light light)
Get Rhino.Geometry.Light object associated to Guig uuid
doc (RhinoDoc)
uuid (Guid)
light (ref Light)

LightsInSoloStorage

#Since v6.0
public virtual int LightsInSoloStorage(RhinoDoc doc)
Returns the number of lights in solo storage - any number other than 0 means "in solo mode"
doc (RhinoDoc)
Returns the number of lights in solo storage - any number other than 0 means "in solo mode"

ModifyLight

#Since v6.0
public abstract void ModifyLight(RhinoDoc doc, Light light)
Modify properties of the light
doc (RhinoDoc)
light (Light)

ObjectSerialNumberFromLight

#Since v6.0
public abstract int ObjectSerialNumberFromLight(RhinoDoc doc, ref Light light)
Get the object serial number of the light
doc (RhinoDoc)
light (ref Light)

OnCustomLightEvent

#Since v6.0
public void OnCustomLightEvent(RhinoDoc doc, LightMangerSupportCustomEvent le, ref Light light)
Generates LightMangerSupportCustomEvent: light_added, light_deleted, light_undeleted, light_modified, light_sorted, The event triggers a Light table event that the rdk lightmanager listens too
doc (RhinoDoc)
le (LightMangerSupportCustomEvent)
light (ref Light)
Returns the string representation of the light description

OnEditLight

#Since v6.0
public abstract bool OnEditLight(RhinoDoc doc, ref LightArray light_array)
The default implementation of OnEditLight selects the lights and opens the Lights Properties page
doc (RhinoDoc)
light_array (ref LightArray)
Returns true if successful, else false

PluginId

#Since v6.0
public abstract Guid PluginId()
The Guid of the plugin
Returns the Guid of the plugin

RegisterLightManager

#Since v6.0
public static void RegisterLightManager(PlugIn plugin)
Find and register classes that derive from LightManagerSupport from the given plug-in.
plugin (PlugIn)

RegisterProviders

#Since v6.0
public static void RegisterProviders(Assembly assembly, Guid pluginId)
Find and register classes that derive from RealtimeDisplayMode from the given plug-in. The plug-in is found in the given assembly
assembly (Assembly)
pluginId (Guid)

RenderEngineId

#Since v6.0
public abstract Guid RenderEngineId()
The Guid of the render engine
Returns the Guid of the render engine that is associated with this light manager

SetLightSolo

#Since v6.0
public virtual bool SetLightSolo(RhinoDoc doc, Guid uuid_light, bool bSolo)
First checks to see if we are in "solo mode" - which means that there are any lights that respond "true" to IsInSoloStorage. If in solo mode: If bSolo = true Sets this light on. If bSolo = false If this is the last light "on", forces all lights out of solo mode. If there are other lights on, turns this light off. If not in solo mode: If bSolo = true Forces all lights into solo storage and sets this light on. If bSolo = false This shouldn't happen. Will cause an ASSERT
doc (RhinoDoc)
uuid_light (Guid)
bSolo (bool)
Returns true if action is successful

UnGroup

#Since v6.0
public abstract void UnGroup(RhinoDoc doc, ref LightArray light_array)
UnGroups the lights
doc (RhinoDoc)
light_array (ref LightArray)