Class Ifc2x3::IfcLightSource

Nested Relationships

This class is a nested type of Struct Ifc2x3.

Inheritance Relationships

Base Type

Derived Types

Class Documentation

class Ifc2x3::IfcLightSource : public Ifc2x3::IfcGeometricRepresentationItem

Definition from ISO/CD 10303-46:1992: The light source entity is determined by the reflectance specified in the surface style rendering. Lighting is applied on a surface by surface basis: no interactions between surfaces such as shadows or reflections are defined.

NOTE: Corresponding STEP entity: light_source. Please refer to ISO/IS 10303-46:1994, p. 31 for the final definition of the formal standard.

NOTE: In addition to the attributes as defined in ISO10303-46 the following additional properties from ISO/IEC 14772-1:1997 (VRML) are added: ambientIntensity and Intensity. The attribute Name has been added as well (as it is not inherited via representation_item).

HISTORY: This is a new Entity in IFC 2x, renamed and enhanced in IFC2x2.

Subclassed by Ifc2x3::IfcLightSourceAmbient, Ifc2x3::IfcLightSourceDirectional, Ifc2x3::IfcLightSourceGoniometric, Ifc2x3::IfcLightSourcePositional

Public Types

typedef IfcTemplatedEntityList<IfcLightSource> list

Public Functions

bool hasName() const

Whether the optional attribute Name is defined for this IfcLightSource.

std::string Name() const

The name given to the light source in presentation.

void setName(std::string v)
::Ifc2x3::IfcColourRgb *LightColour() const

Definition from ISO/CD 10303-46:1992: Based on the current lighting model, the colour of the light to be used for shading. Definition from VRML97 - ISO/IEC 14772-1:1997: The color field specifies the spectral color properties of both the direct and ambient light emission as an RGB value.

void setLightColour(::Ifc2x3::IfcColourRgb *v)
bool hasAmbientIntensity() const

Whether the optional attribute AmbientIntensity is defined for this IfcLightSource.

double AmbientIntensity() const

Definition from VRML97 - ISO/IEC 14772-1:1997: The ambientIntensity specifies the intensity of the ambient emission from the light. Light intensity may range from 0.0 (no light emission) to 1.0 (full intensity).

void setAmbientIntensity(double v)
bool hasIntensity() const

Whether the optional attribute Intensity is defined for this IfcLightSource.

double Intensity() const

Definition from VRML97 - ISO/IEC 14772-1:1997: The intensity field specifies the brightness of the direct emission from the ligth. Light intensity may range from 0.0 (no light emission) to 1.0 (full intensity).

void setIntensity(double v)
const IfcParse::entity &declaration() const
IfcLightSource(IfcEntityInstanceData *e)
IfcLightSource(boost::optional<std::string> v1_Name, ::Ifc2x3::IfcColourRgb *v2_LightColour, boost::optional<double> v3_AmbientIntensity, boost::optional<double> v4_Intensity)

Public Static Functions

const IfcParse::entity &Class()