Main Page | Modules | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

X3D_NurbsPositionInterpolator.h

Go to the documentation of this file.
00001 #ifndef X3DTK_X3D_NURBSPOSITIONINTERPOLATOR
00002 #define X3DTK_X3D_NURBSPOSITIONINTERPOLATOR
00003 
00004 #include "X3DTypes.h"
00005 #include "X3D_X3DInterpolatorNode.h"
00006 
00007 namespace X3DTK {
00008 namespace X3D {
00009 
00018 class NurbsPositionInterpolator : public X3DInterpolatorNode
00019 {
00020 public:
00022   NurbsPositionInterpolator();
00024   NurbsPositionInterpolator(const SFBool         &fractionAbsolute,
00025                             const SFInt32        &dimension,
00026                             const MFFloat  &key,
00027                             const MFVec3f  &keyValue,
00028                             const MFDouble &keyWeight,
00029                             const MFDouble &knot,
00030                             const SFInt32        &order);
00032   virtual SFAbstractNode clone() const;
00034   virtual ~NurbsPositionInterpolator();
00035 
00037   void setFractionAbsolute(const SFBool &fractionAbsolute);
00039   void setDimension(const SFInt32 &dimension);
00041   void setKeyValue(const MFVec3f &keyValue);
00043   void setKeyWeight(const MFDouble &keyWeight);
00045   void setKnot(const MFDouble &knot);
00047   void setOrder(const SFInt32 &order);
00048 
00050   inline const SFBool &getFractionAbsolute() const {return _fractionAbsolute;};
00052   inline const SFInt32 &getDimenstion() const {return _dimension;};
00054   inline const MFVec3f &getKeyValue() const {return _keyValue;};
00056   inline const MFDouble &getKeyWeight() const {return _keyWeight;};
00058   inline const MFDouble &getKnot() const {return _knot;};
00060   inline const SFInt32 &getOrder() const {return _order;};
00061 
00063   virtual void load(const X3DFileElement *element);
00065   virtual SFString &write(SFString &output) const;
00066 
00067 protected:
00069   NurbsPositionInterpolator(const NurbsPositionInterpolator &N);
00070 
00071 private:
00073   SFBool _fractionAbsolute;
00075   SFInt32 _dimension;
00077   MFVec3f _keyValue;
00079   MFDouble _keyWeight;
00081   MFDouble _knot;
00083   SFInt32 _order;
00084 };
00085 
00086 }
00087 }
00088 
00089 #endif

Generated on Thu Jun 3 10:12:10 2004 for X3DToolKit by doxygen 1.3.6