Home | Download | Screen shots | Discussion | Documentation | Links |
---|
Inheritance diagram for SpotLight:
Public Methods | |
SpotLight (const NodeType &nodeType, const ScopePtr &scope) | |
Constructor. | |
virtual | ~SpotLight () throw () |
Destructor. | |
virtual SpotLight * | toSpotLight () const |
Cast to a SpotLight. | |
virtual void | renderScoped (Viewer *) |
Render the scoped light. | |
Private Methods | |
virtual void | initializeImpl (double timestamp) throw () |
Initialize. | |
void | processSet_attenuation (const FieldValue &sfvec3f, double timestamp) throw (std::bad_cast) |
set_attenuation eventIn handler. | |
void | processSet_beamWidth (const FieldValue &sffloat, double timestamp) throw (std::bad_cast) |
set_beamWidth eventIn handler. | |
void | processSet_cutOffAngle (const FieldValue &sffloat, double timestamp) throw (std::bad_cast) |
set_cutOffAngle eventIn handler. | |
void | processSet_direction (const FieldValue &sfvec3f, double timestamp) throw (std::bad_cast) |
set_direction eventIn handler. | |
void | processSet_location (const FieldValue &sfvec3f, double timestamp) throw (std::bad_cast) |
set_location eventIn handler. | |
void | processSet_radius (const FieldValue &sffloat, double timestamp) throw (std::bad_cast) |
set_radius eventIn handler. | |
Private Attributes | |
SFVec3f | attenuation |
attenuation exposedField. | |
SFFloat | beamWidth |
beamWidth exposedField. | |
SFFloat | cutOffAngle |
cutOffAngle exposedField. | |
SFVec3f | direction |
direction exposedField. | |
SFVec3f | location |
location exposedField. | |
SFFloat | radius |
radius exposedField. | |
Friends | |
class | SpotLightClass |
Class object for SpotLight instances. |
|
Constructor.
|
|
Destructor.
|
|
Initialize.
Reimplemented from Node. |
|
set_attenuation eventIn handler.
|
|
set_beamWidth eventIn handler.
|
|
set_cutOffAngle eventIn handler.
|
|
set_direction eventIn handler.
|
|
set_location eventIn handler.
|
|
set_radius eventIn handler.
|
|
Render the scoped light. This should be called before rendering any geometry in the scene. Since this is called from Scene::render before traversing the scene graph, the proper transformation matrix hasn't been set up. Somehow it needs to figure out the accumulated xforms of its parents and apply them before rendering. This is not easy with DEF/USEd nodes...
Reimplemented from AbstractLight. |
|
Cast to a SpotLight.
Reimplemented from Node. |
|
Class object for SpotLight instances.
|
|
attenuation exposedField.
|
|
beamWidth exposedField.
|
|
cutOffAngle exposedField.
|
|
direction exposedField.
|
|
location exposedField.
|
|
radius exposedField.
|