00001 00002 // X3D_CoordinateInterpolator.h // 00004 00005 #ifndef COORDINATEINTERPOLATOR 00006 #define COORDINATEINTERPOLATOR 00007 00008 #include "X3DTypes.h" 00009 #include "X3D_X3DInterpolatorNode.h" 00010 00011 namespace X3DTK { 00012 namespace X3D { 00013 00018 00019 class CoordinateInterpolator : public X3DInterpolatorNode 00020 { 00021 public: 00023 CoordinateInterpolator(); 00025 CoordinateInterpolator(const MFFloat &key, 00026 const MFVec3f &keyValue); 00028 virtual SFAbstractNode clone() const; 00030 virtual ~CoordinateInterpolator(); 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(SFString &output) const; 00042 00043 protected: 00045 CoordinateInterpolator(const CoordinateInterpolator &N); 00046 00047 private: 00049 MFVec3f _keyValue; 00050 }; 00051 00052 } 00053 } 00054 00055 #endif