00001 00002 // NurbsGroup.h // 00004 00005 #ifndef NURBSGROUP 00006 #define NURBSGROUP 00007 00008 #include "X3DTypes.h" 00009 #include "X3DGroupingNode.h" 00010 #include "X3DBoundedObject.h" 00011 00012 namespace X3DTK { 00013 namespace X3D { 00014 00019 00020 class NurbsGroup : public X3DGroupingNode, public X3DBoundedObject 00021 { 00022 public: 00024 NurbsGroup(); 00026 NurbsGroup(const SFVec3f &bboxCenter, 00027 const SFVec3f &bboxSize, 00028 SFFloat tesselationScale); 00030 virtual SFNode clone() const; 00032 virtual ~NurbsGroup(); 00033 00035 void setTesselationScale(SFFloat tesselationScale); 00036 00038 inline SFFloat getTesselation() const {return _tesselationScale;}; 00039 00041 virtual bool addChild(const SFAbstractNode &N); 00043 virtual bool setChild(const SFAbstractNode &N); 00044 00046 virtual void load(const X3DFileElement *element); 00048 virtual SFString write() const; 00049 00050 protected: 00052 NurbsGroup(const NurbsGroup &N); 00053 00054 private: 00056 SFFloat _tesselationScale; 00057 }; 00058 00059 } 00060 } 00061 00062 #endif