00001 00002 // PositionInterpolator.h // 00004 00005 #ifndef POSITIONINTERPOLATOR 00006 #define POSITIONINTERPOLATOR 00007 00008 #include "X3DTypes.h" 00009 #include "X3DInterpolatorNode.h" 00010 00011 namespace X3DTK { 00012 namespace X3D { 00013 00018 00019 class PositionInterpolator : public X3DInterpolatorNode 00020 { 00021 public: 00023 PositionInterpolator(); 00025 PositionInterpolator(const MFFloat &key, 00026 const MFVec3f &keyValue); 00028 virtual SFNode clone() const; 00030 virtual ~PositionInterpolator(); 00031 00033 void setKeyValue(const MFVec3f &keyValue); 00034 00036 inline const MFVec3f &getKeyValue() const {return _keyValue;}; 00037 00039 virtual void load(const X3DFileElement *element); 00041 virtual SFString write() const; 00042 00043 protected: 00045 PositionInterpolator(const PositionInterpolator &N); 00046 00047 private: 00049 MFVec3f _keyValue; 00050 }; 00051 00052 } 00053 } 00054 00055 #endif