00001
00002
00003 #ifndef __RADIUS_EXPLORER_H
00004 #define __RADIUS_EXPLORER_H
00005
00006 #include <esg/Definitions.h>
00007 #include <esg/explorer/Explorer.h>
00008
00009 namespace esg {
00010
00011 class OGSCENE_EXPORT RadiusExplorer : public Explorer {
00012 private:
00013 Vector3 _centroid;
00014 Vector3 _trCentroid;
00015 double _radius;
00016
00017 protected:
00018 virtual bool _process_leaf (SceneGraphObject&);
00019 virtual void _accept_new_transformation (const Matrix4&);
00020
00021 public:
00022 RadiusExplorer (const Vector3& c)
00023 : _centroid(c), _trCentroid(c), _radius(-MAXDOUBLE) {}
00024
00025 double result () const { return _radius; }
00026 };
00027
00028 };
00029
00030 #endif // __RADIUS_EXPLORER_H