HPS::Spotlight Class Reference

#include <hps.h>

Public Types

enum  InnerConeUnits : uint32_t { InnerConeUnits::Degrees, InnerConeUnits::FieldRadius, InnerConeUnits::Percent }
 
enum  OuterConeUnits : uint32_t { OuterConeUnits::Degrees, OuterConeUnits::FieldRadius }
 

Detailed Description

The Spotlight class is a concept class for spotlight-related enum classes.

Member Enumeration Documentation

◆ InnerConeUnits

enum HPS::Spotlight::InnerConeUnits : uint32_t
strong

Enumerates the units used when specifying an inner-cone size for a spotlight.

Enumerator
Degrees 

The number of degrees from one edge of the cone, through the light-direction vector, to the opposite edge of the cone. The corresponding size should be in the range (0, 360]. It is possible to make a spotlight shine "behind" itself by specifying an angle larger than 180 degrees, and it is possible to have a spotlight which shines in all directions by specifying an angle of 360 degrees.

FieldRadius 

The radius (in object space units) of the circular intersection of the cone with the plane passing through the target point with a normal parallel to the light-direction vector. The corresponding size should be greater than or equal to 0. Using this unit, it is not possible to specify a cone that shines "behind" the spotlight, since an infinitely large radius would correspond to an angular size of 180 degrees.

Percent 

The percentage of the containing outer-cone size. The corresponding size should be in the range [0, 100]. A value of 0 results in a cone size equal to the light-direction vector itself, a value of 100 results in a cone size identical to the containing outer-cone size.

◆ OuterConeUnits

enum HPS::Spotlight::OuterConeUnits : uint32_t
strong

Enumerates the units used when specifying an outer-cone size for a spotlight.

Enumerator
Degrees 

The number of degrees from one edge of the cone, through the light-direction vector, to the opposite edge of the cone. The corresponding size should be in the range (0, 360]. It is possible to make a spotlight shine "behind" itself by specifying an angle larger than 180 degrees, and it is possible to have a spotlight which shines in all directions by specifying an angle of 360 degrees.

FieldRadius 

The radius (in object space units) of the circular intersection of the cone with the plane passing through the target point with a normal parallel to the light-direction vector. The corresponding size should be greater than or equal to 0. Using this unit, it is not possible to specify a cone that shines "behind" the spotlight, since an infinitely large radius would correspond to an angular size of 180 degrees.


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