VectSharp 2.5.0
A light library for C# vector graphics
Loading...
Searching...
No Matches
VectSharp.ThreeD.PointLightSource Class Reference

Represents a point light source. More...

Inheritance diagram for VectSharp.ThreeD.PointLightSource:

Public Member Functions

 PointLightSource (double intensity, Point3D position)
 Creates a new PointLightSource instance. More...
 
LightIntensity GetLightAt (Point3D point)
 Computes the light intensity at the specified point, without taking into account any obstructions.
Parameters
pointThe Point3DElement at which the light intensity should be computed.
Returns
More...
 
double GetObstruction (Point3D point, IEnumerable< Triangle3DElement > shadowingTriangles)
 Determines the amount of obstruction of the light that results at point due to the specified shadowingTriangles .
Parameters
pointThe Point3D at which the obstruction should be computed.
shadowingTrianglesA collection of Triangle3DElement casting shadows.
Returns
1 if the light is completely obstructed, 0 if the light is completely visible, a value between these if the light is partially obstructed.
More...
 
LightIntensity GetLightAt (Point3D point)
 Computes the light intensity at the specified point, without taking into account any obstructions. More...
 
double GetObstruction (Point3D point, IEnumerable< Triangle3DElement > shadowingTriangles)
 Determines the amount of obstruction of the light that results at point due to the specified shadowingTriangles . More...
 

Properties

bool CastsShadow = true [get, set]
 Determines whether the light casts a shadow or not. More...
 
Point3D Position [get, set]
 The position of the light source. More...
 
double Intensity [get, set]
 The base intensity of the light. More...
 
double DistanceAttenuationExponent = 2 [get, set]
 An exponent determining how fast the light attenuates with increasing distance. Set to 0 to disable distance attenuation. More...
 
- Properties inherited from VectSharp.ThreeD.ILightSource
bool CastsShadow [get]
 Determines whether the light casts a shadow or not. More...
 

Detailed Description

Represents a point light source.

Definition at line 184 of file Lights.cs.

Constructor & Destructor Documentation

◆ PointLightSource()

VectSharp.ThreeD.PointLightSource.PointLightSource ( double  intensity,
Point3D  position 
)

Creates a new PointLightSource instance.

Parameters
intensityThe intensity of the light.
positionThe position of the light source.

Definition at line 209 of file Lights.cs.

Member Function Documentation

◆ GetLightAt()

LightIntensity VectSharp.ThreeD.PointLightSource.GetLightAt ( Point3D  point)

Computes the light intensity at the specified point, without taking into account any obstructions.

Parameters
pointThe Point3DElement at which the light intensity should be computed.
Returns

Implements VectSharp.ThreeD.ILightSource.

Definition at line 216 of file Lights.cs.

◆ GetObstruction()

double VectSharp.ThreeD.PointLightSource.GetObstruction ( Point3D  point,
IEnumerable< Triangle3DElement >  shadowingTriangles 
)

Determines the amount of obstruction of the light that results at point due to the specified shadowingTriangles .

Parameters
pointThe Point3D at which the obstruction should be computed.
shadowingTrianglesA collection of Triangle3DElement casting shadows.
Returns
1 if the light is completely obstructed, 0 if the light is completely visible, a value between these if the light is partially obstructed.

Implements VectSharp.ThreeD.ILightSource.

Definition at line 233 of file Lights.cs.

Property Documentation

◆ CastsShadow

bool VectSharp.ThreeD.PointLightSource.CastsShadow = true
getset

Determines whether the light casts a shadow or not.

Implements VectSharp.ThreeD.ILightSource.

Definition at line 187 of file Lights.cs.

◆ DistanceAttenuationExponent

double VectSharp.ThreeD.PointLightSource.DistanceAttenuationExponent = 2
getset

An exponent determining how fast the light attenuates with increasing distance. Set to 0 to disable distance attenuation.

Definition at line 202 of file Lights.cs.

◆ Intensity

double VectSharp.ThreeD.PointLightSource.Intensity
getset

The base intensity of the light.

Definition at line 197 of file Lights.cs.

◆ Position

Point3D VectSharp.ThreeD.PointLightSource.Position
getset

The position of the light source.

Definition at line 192 of file Lights.cs.


The documentation for this class was generated from the following file: