T_Rhino_Geometry_Light - mcneel/rhinocommon-api-docs GitHub Wiki

Light Class

Represents a light that shines in the modeling space.

Inheritance Hierarchy

System.Object
  Rhino.Runtime.CommonObject
    Rhino.Geometry.GeometryBase
      Rhino.Geometry.Light
Namespace: Rhino.Geometry
Assembly: RhinoCommon (in RhinoCommon.dll) Version: Rhino 6.0

Syntax

C#

[SerializableAttribute]
public class Light : GeometryBase

VB

<SerializableAttribute>
Public Class Light
	Inherits GeometryBase

The Light type exposes the following members.

Constructors

 

Name Description
Public method Light() Initializes a new light.
Protected method Light(SerializationInfo, StreamingContext) Protected constructor used in serialization.
  Back to Top

Properties

 

Name Description
Public property Ambient Gets or sets the ambient color.
Public property AttenuationVector Gets or Sets the attenuation vector.
Public property CoordinateSystem Gets a value, determined by LightStyle, that explains whether the camera directions are relative to World or Camera spaces.
Public propertyCode example Diffuse Gets or sets the diffuse color.
Public property Direction Gets or sets the vector direction of the camera.
Public property HasBrepForm Returns true if the Brep.TryConvertBrep function will be successful for this object (Inherited from GeometryBase.)
Public property HasUserData Gets true if this class has any custom information attached to it through UserData. (Inherited from CommonObject.)
Public property HotSpot The hot spot setting runs from 0.0 to 1.0 and is used to provides a linear interface for controling the focus or concentration of a spotlight. A hot spot setting of 0.0 corresponds to a spot exponent of 128. A hot spot setting of 1.0 corresponds to a spot exponent of 0.0.
Public property Id Gets the ID of this light.
Public property Intensity Gets or sets the light intensity.
Public property IsDeformable true if object can be accurately modified with "squishy" transformations like projections, shears, and non-uniform scaling. (Inherited from GeometryBase.)
Public property IsDirectionalLight Gets a value indicating whether the light style is LightStyle CameraDirectional or WorldDirectional.
Public property IsDocumentControlled If true this object may not be modified. Any properties or functions that attempt to modify this object when it is set to "IsReadOnly" will throw a NotSupportedException. (Inherited from GeometryBase.)
Public property IsEnabled Gets or sets a value that defines if the light is turned on (true) or off (false).
Public property IsLinearLight Gets a value indicating whether the light style is LightStyle WorldLinear.
Public property IsPointLight Gets a value indicating whether the light style is LightStyle CameraPoint or WorldPoint.
Public property IsRectangularLight Gets a value indicating whether the light style is LightStyle WorldRectangular.
Public property IsSpotLight Gets a value indicating whether the light style is LightStyle CameraSpot or WorldSpot.
Public property IsSunLight Gets a value indicating whether this object is a Sun light.
Public property IsValid Tests an object to see if it is valid. (Inherited from CommonObject.)
Public property Length Gets or sets the height in linear and rectangular lights. (ignored for non-linear/rectangular lights.)
Public property LightStyle Gets or sets a light style on this camera.
Public property Location Gets or sets the light or 3D position or location.
Public property Name Gets or sets the spot light name.
Public property ObjectType Useful for switch statements that need to differentiate between basic object types like points, curves, surfaces, and so on. (Inherited from GeometryBase.)
Public property PerpendicularDirection Gets a perpendicular vector to the camera direction.
Public property PowerCandela Gets or sets the light power in candelas (cd).
Public property PowerLumens Gets or sets the light power in lumens (lm).
Public property PowerWatts Gets or sets the light power in watts (W).
Public property Specular Gets or sets the specular color.
Public property SpotAngleRadians Gets or sets the spot angle in radians. Ignored for non-spot lights.

angle = 0 to pi/2 (0 to 90 degrees).

Public property SpotExponent The spot exponent varies from 0.0 to 128.0 and provides an exponential interface for controling the focus or concentration of a spotlight (like the OpenGL GL_SPOT_EXPONENT parameter). The spot exponent and hot spot parameters are linked; changing one will change the other. A hot spot setting of 0.0 corresponds to a spot exponent of 128. A hot spot setting of 1.0 corresponds to a spot exponent of 0.0.
Public property SpotLightShadowIntensity Gets or sets the spot light shadow intensity. (ignored for non-spot lights.)
Public property UserData List of custom information that is attached to this class. (Inherited from CommonObject.)
Public property UserDictionary Dictionary of custom information attached to this class. The dictionary is actually user data provided as an easy to use sharable set of information. (Inherited from CommonObject.)
Public property UserStringCount Gets the amount of user strings. (Inherited from GeometryBase.)
Public property Width Gets or sets the width in linear and rectangular lights. (ignored for non-linear/rectangular lights.)
  Back to Top

Methods

 

Name Description
Public method ComponentIndex If this piece of geometry is a component in something larger, like a BrepEdge in a Brep, then this function returns the component index. (Inherited from GeometryBase.)
Protected method ConstructConstObject Assigns a parent object and a subobject index to this. (Inherited from CommonObject.)
Public methodStatic member CreateSunLight(Sun) Constructs a light which simulates a Sun.
Public methodStatic member CreateSunLight(Double, Double, Double) Constructs a light that represents the Sun.
Public methodStatic member CreateSunLight(Double, DateTime, Double, Double) Constructs a light which simulates the Sun based on a given time and location on Earth.
Public method Dispose() Actively reclaims unmanaged resources that this instance uses. (Inherited from CommonObject.)
Protected method Dispose(Boolean) For derived class implementers. This method is called with argument true when class user calls Dispose(), while with argument false when the Garbage Collector invokes the finalizer, or Finalize() method.

You must reclaim all used unmanaged resources in both cases, and can use this chance to call Dispose on disposable fields if the argument is true.

Also, you must call the base virtual method within your overriding method.

(Inherited from CommonObject.)

Public method Duplicate Constructs a deep (full) copy of this object. (Inherited from GeometryBase.)
Public method DuplicateShallow Constructs a light copy of this object. By "light", it is meant that the same underlying data is used until something is done to attempt to change it. For example, you could have a shallow copy of a very heavy mesh object and the same underlying data will be used when doing things like inspecting the number of faces on the mesh. If you modify the location of one of the mesh vertices, the shallow copy will create a full duplicate of the underlying mesh data and the shallow copy will become a deep copy. (Inherited from GeometryBase.)
Public method EnsurePrivateCopy If you want to keep a copy of this class around by holding onto it in a variable after a command completes, call EnsurePrivateCopy to make sure that this class is not tied to the document. You can call this function as many times as you want. (Inherited from CommonObject.)
Public method Equals Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected method Finalize() Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Protected method Finalize() Passively reclaims unmanaged resources when the class user did not explicitly call Dispose(). (Inherited from CommonObject.)
Public method GetAttenuation Gets the attenuation settings (ignored for "directional" and "ambient" lights). attenuation = 1/(a0 + da1 + d^2a2) where d = distance to light.
Public methodCode example GetBoundingBox(Boolean) Boundingbox solver. Gets the world axis aligned boundingbox for the geometry. (Inherited from GeometryBase.)
Public methodCode example GetBoundingBox(Plane) Aligned Boundingbox solver. Gets the plane aligned boundingbox. (Inherited from GeometryBase.)
Public method GetBoundingBox(Transform) Aligned Boundingbox solver. Gets the world axis aligned boundingbox for the transformed geometry. (Inherited from GeometryBase.)
Public method GetBoundingBox(Plane, Box) Aligned Boundingbox solver. Gets the plane aligned boundingbox. (Inherited from GeometryBase.)
Public method GetHashCode Serves as the default hash function. (Inherited from Object.)
Public method GetObjectData Populates a System.Runtime.Serialization.SerializationInfo with the data needed to serialize the target object. (Inherited from CommonObject.)
Public method GetSpotLightRadii Gets the spot light radii.
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public method GetUserString Gets user string from this geometry. (Inherited from GeometryBase.)
Public method GetUserStrings Gets a copy of all (user key string, user value string) pairs attached to this geometry. (Inherited from GeometryBase.)
Public method IsValidWithLog Determines if an object is valid. Also provides a report on errors if this object happens not to be valid. (Inherited from CommonObject.)
Public method MakeDeformable If possible, converts the object into a form that can be accurately modified with "squishy" transformations like projections, shears, an non-uniform scaling. (Inherited from GeometryBase.)
Protected method MemberwiseClone Creates a shallow copy of the current Object. (Inherited from Object.)
Public method MemoryEstimate Computes an estimate of the number of bytes that this object is using in memory. (Inherited from GeometryBase.)
Protected method NonConstOperation For derived classes implementers. Defines the necessary implementation to free the instance from being const.

(Inherited from CommonObject.)

Protected method OnSwitchToNonConst Is called when a non-const operation occurs. (Inherited from GeometryBase.)
Public method Rotate Rotates the object about the specified axis. A positive rotation angle results in a counter-clockwise rotation about the axis (right hand rule). (Inherited from GeometryBase.)
Public method Scale Scales the object by the specified factor. The scale is centered at the origin. (Inherited from GeometryBase.)
Public method SetAttenuation Sets the attenuation settings (ignored for "directional" and "ambient" lights). attenuation = 1/(a0 + da1 + d^2a2) where d = distance to light.
Public method SetUserString Attach a user string (key,value combination) to this geometry. (Inherited from GeometryBase.)
Public method ToString Returns a string that represents the current object. (Inherited from Object.)
Public method Transform Transforms the geometry. If the input Transform has a SimilarityType of OrientationReversing, you may want to consider flipping the transformed geometry after calling this function when it makes sense. For example, you may want to call Flip() on a Brep after transforming it. (Inherited from GeometryBase.)
Public method Translate(Vector3d) Translates the object along the specified vector. (Inherited from GeometryBase.)
Public method Translate(Double, Double, Double) Translates the object along the specified vector. (Inherited from GeometryBase.)
  Back to Top

Version Information

Supported in: 6.0.16224.21491, 5D58w

See Also

Reference

Rhino.Geometry Namespace

⚠️ **GitHub.com Fallback** ⚠️