Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

NurbsCurve2D.h

Go to the documentation of this file.
00001 
00002 //                            NurbsCurve2D.h                                  //
00004 
00005 #ifndef NURBSCURVE2D
00006 #define NURBSCURVE2D
00007 
00008 #include "X3DTypes.h"
00009 #include "X3DParametricGeometryNode.h"
00010 
00011 namespace X3DTK {
00012 namespace X3D {
00013 
00018 
00019 class NurbsCurve2D : public X3DParametricGeometryNode
00020 {
00021 public:
00023   NurbsCurve2D();
00025   NurbsCurve2D(const MFVec2f  &controlPoint,
00026                SFInt32        tesselation,
00027                const MFDouble &weight,
00028                const MFDouble &knot,
00029                SFInt32        order);
00031   virtual SFNode clone() const;
00033   virtual ~NurbsCurve2D();
00034 
00036   void setControlPoint(const MFVec2f &controlPoint);
00038   void setTesselation(SFInt32 tesselation);
00040   void setWeight(const MFDouble &weight);
00042   void setKnot(const MFDouble &knot);
00044   void setOrder(SFInt32 order);
00045 
00047   inline const MFVec2f &getControlPoint() const {return _controlPoint;};
00049   inline SFInt32 getTesselation() const {return _tesselation;};
00051   inline const MFDouble &getWeight() const {return _weight;};
00053   inline const MFDouble &getKnot() const {return _knot;};
00055   inline SFInt32 getOrder() const {return _order;};
00056 
00058   virtual void load(const X3DFileElement *element);
00060   virtual SFString write() const;
00061 
00062 protected:
00064   NurbsCurve2D(const NurbsCurve2D &N);
00065 
00066 private:
00068   MFVec2f _controlPoint;
00070   SFInt32 _tesselation;
00072   MFDouble _weight;
00074   MFDouble _knot;
00076   SFInt32 _order;
00077 };
00078 
00079 }
00080 }
00081 
00082 #endif

Generated on Thu Oct 9 13:50:54 2003 for X3DToolKit by doxygen1.2.18