The SEDRIS Data Representation Model
APPENDIX A - Classes
Infinite Light

Class Name: Infinite Light

Superclass - <Light Source>

Subclasses

This DRM class is concrete and has no subclasses.

Definition

An instance of this DRM class is a <Light Source> that is considered to be located infinitely far away. It illuminates uniformly along a particular direction. Colour and control are inherited from <Light Source>. An <Infinite Light> has no bound of influence and so affects all components of any <Aggregate Geometry> that references it.

Primary Page in DRM Diagram:

Secondary Pages in DRM Diagram:

This class appears on only one page of the DRM class diagram.

Example

  1. Consider an <Environment Root> instance that has a <Spatial Index Related Geometry> component, representing the terrain in its transmittal. The <Spatial Index Related Geometry> has an <Infinite Light> component, representing the sun.

FAQs

No FAQs supplied.

Constraints

Composed of (two-way) (inherited)

Composed of (two-way)

Component of (two-way) (inherited)

Inherited Field Elements

SE_Boolean apply_to_children; (notes)
SE_Boolean override_positional_lights; (notes)
SE_Boolean override_infinite_lights; (notes)
SE_Boolean active_light_value; (notes)

Notes

Composed of Notes


Light_Source_Control_Link

 If a <Light Source> instance is subject to dynamic control -
 that is, if it can be turned on and off - it will have a
 <Light Source Control Link> component to express that
 control mechanism.

Reference_Vector

 This specifies the direction of light source illumination, and
 its vector_type = SE_REF_VEC_TYP_LIGHT_DIRECTION.

Fields Notes


apply_to_children

 For a <Light Source> instance (that is, an instance of one of the
 concrete classes descended from the class) that is a component of
 some <Aggregate Geometry>, apply_to_children provides a mechanism
 for limiting the scope of the <Light Source>. If apply_to_children
 is SE_TRUE, only <Primitive Geometry> in the component tree of those
 <Aggregate Geometry> instances are affected by the given
 <Light Source>. If apply_to_children is SE_FALSE, the <Light Source>
 is not limited to the scope of those <Aggregate Geometry> instances
 and thus applies globally.

override_positional_lights

 For a <Light Source> instance that is a component of some
 <Aggregate Geometry>, override_positional_lights provides a
 mechanism to indicate with a value of SE_TRUE that the effect of the
 given <Light Source> overrides that of any <Base Positional Light>
 instances that would have otherwise applied to that
 <Aggregate Geometry> - for example, if the given <Light Source> is
 so close to the affected <Geometry Representation> that the
 <Base Positional Light> effects would be negligible. If
 override_positional_lights = SE_FALSE, the effect of the
 given <Light Source> is combined with that
 of any <Base Positional Light> instances that are already in effect.

override_infinite_lights

 For a <Light Source> instance (that is, an instance of one of the
 concrete classes descended from the class) that is a component of
 some <Aggregate Geometry>, override_infinite_lights provides a
 mechanism to indicate with a value of SE_TRUE that the effect of the
 given <Light Source> overrides that of any <Infinite Light>
 instances that would have otherwise applied to that
 <Aggregate Geometry>. If override_infinite_lights = SE_FALSE,
 the effect of the given <Light Source> is combined with that
 of any <Infinite Light> instances that are already in effect.

active_light_value

 A value of SE_TRUE for the active_light_value field indicates
 that the light is on, while a value of
 SE_FALSE indicates that the light is off. For a <Light Source>
 with a <Light Source Control Link> instance as a component,
 this is the default state of the light.

Prev: Index LOD Data. Next: Inline Colour. Up:Index.

Last updated: July 16, 2004 Copyright © 2004 SEDRIS