00001 #ifndef X3DTK_X3D_SPHERE_H 00002 #define X3DTK_X3D_SPHERE_H 00003 00004 #include "X3DTypes.h" 00005 #include "X3D_X3DGeometry3DNode.h" 00006 00007 namespace X3DTK { 00008 namespace X3D { 00009 00018 class Sphere : public X3DGeometry3DNode 00019 { 00020 public: 00022 Sphere(); 00024 explicit Sphere(const SFFloat &radius); 00026 virtual SFAbstractNode clone() const; 00028 virtual ~Sphere(); 00029 00031 void setRadius(const SFFloat &radius); 00032 00034 inline const SFFloat &getRadius() const {return _radius;}; 00035 00037 virtual void load(const X3DFileElement *element); 00039 virtual SFString &write(SFString &output) const; 00040 00041 protected: 00043 Sphere(const Sphere &C); 00044 00045 private: 00047 SFFloat _radius; 00048 }; 00049 00050 } 00051 } 00052 00053 #endif