00001
00002
00003
00005
00006
00011
00016
00021
00023
00024 #ifndef DIRECTIONALLIGHT
00025 #define DIRECTIONALLIGHT
00026
00027 #include "X3DTypes.h"
00028 #include "X3DLightNode.h"
00029
00030 namespace X3DTK {
00031 namespace X3D {
00032
00037
00038 class DirectionalLight : public X3DLightNode
00039 {
00040 public:
00042 DirectionalLight();
00044 DirectionalLight(SFFloat ambientIntensity,
00045 const SFColor &color,
00046 const SFVec3f &direction,
00047 SFFloat intensity,
00048 SFBool on);
00050 virtual SFNode clone() const;
00052 virtual ~DirectionalLight();
00053
00055 void setDirection(const SFVec3f &direction);
00056
00058 inline const SFVec3f &getDirection() const {return _direction;};
00059
00061 virtual void load(const X3DFileElement *element);
00063 virtual SFString write() const;
00064
00065 protected:
00067 DirectionalLight(const DirectionalLight &N);
00068
00069 private:
00071 SFVec3f _direction;
00072 };
00073
00074 }
00075 }
00076
00077 #endif