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