Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

PointLight.h

Go to the documentation of this file.
00001 
00002 
00003 
00005 
00006 
00011 
00016 
00021 //                            PointLight.h                              //
00023 
00024 #ifndef POINTLIGHT
00025 #define POINTLIGHT
00026 
00027 #include "X3DTypes.h"
00028 #include "X3DLightNode.h"
00029 
00030 namespace X3DTK {
00031 namespace X3D {
00032 
00037 
00038 class PointLight : public X3DLightNode
00039 {
00040 public:
00042   PointLight();
00044   PointLight(SFFloat       ambientIntensity,
00045              const SFVec3f &attenuation,
00046              const SFColor &color,
00047              SFFloat       intensity,
00048              const SFVec3f &location,
00049              SFBool        on,
00050              SFFloat       radius);
00052   virtual SFNode clone() const;
00054   virtual ~PointLight();
00055 
00057   void setAttenuation(const SFVec3f &attenuation);
00059   void setLocation(const SFVec3f &location);
00061   void setRadius(SFFloat radius);
00062 
00064   inline const SFVec3f &getAttenuation() const {return _attenuation;};
00066   inline const SFVec3f &getLocation() const {return _location;};
00068   inline SFFloat getRadius() const {return _radius;};
00069 
00071   virtual void load(const X3DFileElement *element);
00073   virtual SFString write() const;
00074 
00075 protected:
00077   PointLight(const PointLight &N);
00078 
00079 private:
00081   SFVec3f _attenuation;
00083   SFVec3f _location;
00085   SFFloat _radius;
00086 };
00087 
00088 }
00089 }
00090 
00091 #endif

Generated on Wed Sep 10 11:25:14 2003 for X3DToolKit by doxygen1.3