00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00027
00029 #ifndef __SPOTLIGHT_H__
00030 #define __SPOTLIGHT_H__
00031
00032 #include "X3DLightNode.h"
00033 #include "SFVec3f.h"
00034
00035 namespace H3D {
00036
00089 class H3DAPI_API SpotLight : public X3DLightNode {
00090 public:
00091
00093 SpotLight( Inst< SFNode > _metadata = 0,
00094 Inst< SFFloat> _ambientIntensity = 0,
00095 Inst< SFColor> _color = 0,
00096 Inst< SFFloat> _intensity = 0,
00097 Inst< SFBool > _on = 0,
00098 Inst< SFVec3f> _attenuation = 0,
00099 Inst< SFFloat> _beamWidth = 0,
00100 Inst< SFFloat> _cutOffAngle = 0,
00101 Inst< SFVec3f> _direction = 0,
00102 Inst< SFVec3f> _location = 0,
00103 Inst< SFFloat> _radius = 0 );
00104
00106 virtual void enableGraphicsState();
00107
00122 auto_ptr< SFVec3f > attenuation;
00123
00139 auto_ptr< SFFloat > beamWidth;
00140
00149 auto_ptr< SFFloat > cutOffAngle;
00150
00158 auto_ptr< SFVec3f > direction;
00159
00169 auto_ptr< SFVec3f > location;
00170
00172 auto_ptr< SFFloat > radius;
00173
00175 static H3DNodeDatabase database;
00176 };
00177 }
00178
00179 #endif