00001 00002 00003 00005 00006 00011 00016 00021 // NurbsGroup.h // 00023 00024 #ifndef NURBSGROUP 00025 #define NURBSGROUP 00026 00027 #include "X3DTypes.h" 00028 #include "X3DGroupingNode.h" 00029 #include "X3DBoundedObject.h" 00030 00031 namespace X3DTK { 00032 namespace X3D { 00033 00038 00039 class NurbsGroup : public X3DGroupingNode, public X3DBoundedObject 00040 { 00041 public: 00043 NurbsGroup(); 00045 NurbsGroup(const SFVec3f &bboxCenter, 00046 const SFVec3f &bboxSize, 00047 SFFloat tesselationScale); 00049 virtual SFNode clone() const; 00051 virtual ~NurbsGroup(); 00052 00054 void setTesselationScale(SFFloat tesselationScale); 00055 00057 inline SFFloat getTesselation() const {return _tesselationScale;}; 00058 00060 virtual bool addChild(const SFAbstractNode &N); 00062 virtual bool setChild(const SFAbstractNode &N); 00063 00065 virtual void load(const X3DFileElement *element); 00067 virtual SFString write() const; 00068 00069 protected: 00071 NurbsGroup(const NurbsGroup &N); 00072 00073 private: 00075 SFFloat _tesselationScale; 00076 }; 00077 00078 } 00079 } 00080 00081 #endif