00001 00002 00003 00005 00006 00011 00016 00021 // X3DBoundedObject.h // 00023 00024 #ifndef X3DBOUNDEDOBJECT_H 00025 #define X3DBOUNDEDOBJECT_H 00026 00027 #include "X3DTypes.h" 00028 #include "X3DObject.h" 00029 #include "X3DFileElement.h" 00030 00031 namespace X3DTK { 00032 namespace X3D { 00033 00038 00039 class X3DBoundedObject : public X3DObject 00040 { 00041 public: 00043 X3DBoundedObject(); 00045 X3DBoundedObject(const SFVec3f &bboxCenter, 00046 const SFVec3f &bboxSize); 00047 00049 X3DBoundedObject(const X3DBoundedObject &N); 00050 00052 virtual ~X3DBoundedObject(); 00053 00055 void setBboxCenter(const SFVec3f &bboxCenter); 00057 void setBboxSize(const SFVec3f &bboxSize); 00058 00060 inline const SFVec3f &getBboxCenter() const {return _bboxCenter;}; 00062 inline const SFVec3f &getBboxSize() const {return _bboxSize;}; 00063 00065 virtual void load(const X3DFileElement *element); 00067 virtual SFString write() const; 00068 00069 private: 00071 SFVec3f _bboxCenter; 00073 SFVec3f _bboxSize; 00074 }; 00075 00076 } 00077 } 00078 00079 #endif