00001 #ifndef X3DTK_X3D_NURBSCURVE 00002 #define X3DTK_X3D_NURBSCURVE 00003 00004 #include "X3DTypes.h" 00005 #include "X3D_X3DParametricGeometryNode.h" 00006 00007 namespace X3DTK { 00008 namespace X3D { 00009 00018 class NurbsCurve : public X3DParametricGeometryNode 00019 { 00020 public: 00022 NurbsCurve(); 00023 00025 void setControlPoint(const MFVec3f &controlPoint); 00027 void setTesselation(const SFInt32 &tesselation); 00029 void setWeight(const MFDouble &weight); 00031 void setKnot(const MFDouble &knot); 00033 void setOrder(const SFInt32 &order); 00034 00036 inline const MFVec3f &getControlPoint() const {return _controlPoint;}; 00038 inline const SFInt32 &getTesselation() const {return _tesselation;}; 00040 inline const MFDouble &getWeight() const {return _weight;}; 00042 inline const MFDouble &getKnot() const {return _knot;}; 00044 inline const SFInt32 &getOrder() const {return _order;}; 00045 00046 private: 00048 MFVec3f _controlPoint; 00050 SFInt32 _tesselation; 00052 MFDouble _weight; 00054 MFDouble _knot; 00056 SFInt32 _order; 00057 }; 00058 00059 } 00060 } 00061 00062 #endif