glc_sphere.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00024
00025 #ifndef GLC_SPHERE_H_
00026 #define GLC_SPHERE_H_
00027
00028 #include "glc_mesh.h"
00029
00030 #include "../glc_config.h"
00031
00034
00037
00038 class GLC_LIB_EXPORT GLC_Sphere : public GLC_Mesh
00039 {
00041
00043
00044 public:
00046 GLC_Sphere(double radius);
00047
00049 GLC_Sphere(const GLC_Sphere & sphere);
00050
00052 virtual ~GLC_Sphere();
00054
00056
00058
00059 public:
00061 static quint32 chunckID();
00062
00064 inline double radius(void) const
00065 {return m_Radius;}
00066
00068 inline int discretion(void) const
00069 {return m_Discret;}
00070
00072 virtual GLC_Geometry* clone() const;
00073
00075 virtual const GLC_BoundingBox& boundingBox(void);
00077
00079
00081
00082 public:
00084
00085 void setRadius(double Radius);
00086
00088
00089 void setDiscretion(int TargetDiscret);
00090
00092
00094
00096
00097 private:
00099 void createMesh();
00100
00102
00104
00106 private:
00108 double m_Radius;
00109
00111 int m_Discret;
00112
00113 double m_ThetaMin;
00114 double m_ThetaMax;
00115 double m_PhiMin;
00116 double m_PhiMax;
00117
00119 static quint32 m_ChunkId;
00120
00121 };
00122
00123 #endif