Class Qkmaxware::Rendering::PointLight

Class List > Qkmaxware > Rendering > PointLight

Light applied from a point in space

Inherits the following classes: Qkmaxware::Rendering::LightSource

Public Attributes inherited from Qkmaxware::Rendering::SceneNode

See Qkmaxware::Rendering::SceneNode

Type Name
Vec3 Backward = => -Forward
World aligned backwards vector
IEnumerable< SceneNode > Children = => children.AsReadOnly()
All direct children of this scene node
Vec3 Down = => -Up
World aligned down vector
Vec3 Forward = => LocalToWorldMatrix * Vec3.J
World aligned forward vector
Vec3 Left = => -Right
World aligned left vector
Transformation LocalToWorldMatrix = => (Parent != null) ? Parent.LocalToWorldMatrix * this.Transform : this.Transform
Matrix to convert from local to world space
Vec3 Position = => LocalToWorldMatrix * Vec3.Zero
World position of this node
Vec3 Right = => LocalToWorldMatrix * Vec3.I
World aligned right vector
Scene? Scene = => (Parent != null) ? Parent.Scene : this.root_scene
Scene in which this node belongs
Transformation Transform = = Transformation.Identity()
Local transformation matrix representing the coordinate frame for this node
Vec3 Up = => LocalToWorldMatrix * Vec3.K
World aligned up vector
Transformation WorldToLocalMatrix = => LocalToWorldMatrix.Inverse
Matrix to convert from world to local space

Public Functions

Type Name
virtual override Vec3 Direction (Vec3 position, Vec3 normal)
Direction of the light incident to the given position
virtual override double Intensity (Vec3 position, Vec3 normal)
Intensity of the light at the given position

Public Functions inherited from Qkmaxware::Rendering::LightSource

See Qkmaxware::Rendering::LightSource

Type Name
virtual abstract Vec3 Direction (Vec3 position, Vec3 normal) = 0
Direction of the light incident to the given position
virtual abstract double Intensity (Vec3 position, Vec3 normal) = 0
Intensity of the light at the given position

Public Functions inherited from Qkmaxware::Rendering::SceneNode

See Qkmaxware::Rendering::SceneNode

Type Name
void Add (SceneNode node)
Add a node to the scene graph under this node
void Detach ()
Remove this node from the scene graph
IEnumerator< SceneNode > GetEnumerator ()
void Move (Vec3 delta)
Move this node
void Remove (SceneNode node)
Remove a node from the scene graph
void Rotate (Vec3 axis, double angle)
Rotate this coordinate frame about an axis
void RotateAround (Vec3 point, Vec3 axis, double angle)
Rotate this node around a point in space

Public Functions Documentation

function Direction

inline virtual override Vec3 Qkmaxware::Rendering::PointLight::Direction (
    Vec3 position,
    Vec3 normal
) 

Parameters:

  • position world position
  • normal world normal

Returns:

light direction

Implements Qkmaxware::Rendering::LightSource::Direction

function Intensity

inline virtual override double Qkmaxware::Rendering::PointLight::Intensity (
    Vec3 position,
    Vec3 normal
) 

Parameters:

  • position world position
  • normal world normal

Returns:

intensity of the light between 0 and 1

Implements Qkmaxware::Rendering::LightSource::Intensity


The documentation for this class was generated from the following file Render/src/LightSource.cs