Go to the documentation of this file.00001
00002
00003 #define DEFAULT_ARRAY_X 30
00004 #define DEFAULT_ARRAY_Y 40
00005 #define DEFAULT_GRID_DENSITY 10
00006
00007 class CDataClass
00008 {
00009 public :
00010 CDataClass()
00011 {
00012 m_nArraySizeX = DEFAULT_ARRAY_X;
00013 m_nArraySizeY = DEFAULT_ARRAY_Y;
00014 m_nGridDensity = DEFAULT_GRID_DENSITY;
00015 m_fMaxHeight = 255.0f;
00016
00017
00018 m_fGridSize = 5.0f;
00019
00020 m_pfArrayData = 0;
00021 m_pfVertexArray = 0;
00022 }
00023 ~CDataClass()
00024 {
00025 ClearAllArray();
00026 }
00027
00028 private :
00029 int m_nArraySizeX;
00030 int m_nArraySizeY;
00031 int m_nGridDensity;
00032 float m_fMaxHeight;
00033 float m_fGridSize;
00034
00035 float* m_pfArrayData;
00036 float* m_pfVertexArray;
00037
00038 public:
00039 void Init( int nArraySizeX = DEFAULT_ARRAY_X,
00040 int nArraySizeY = DEFAULT_ARRAY_Y,
00041 int nGridDensity = DEFAULT_GRID_DENSITY );
00042 void SetData( int x, int y, float fData );
00043 void ScaleData( float fData );
00044 void Sync();
00045 void InverseArray( bool isPositive );
00046
00047 inline float* GetArrayData() { return m_pfArrayData; }
00048 inline float* GetVertexArrayData() { return m_pfVertexArray; }
00049 inline int GetArraySizeX() { return m_nArraySizeX; }
00050 inline int GetArraySizeY() { return m_nArraySizeY; }
00051 inline int GetGridDensity() { return m_nGridDensity; }
00052 inline void SetMaxHeight( float fData ) { m_fMaxHeight = fData; }
00053 inline float GetMaxHeight() { return m_fMaxHeight; }
00054 inline void SetGridSize( float fData ) { m_fGridSize = fData; }
00055 inline float GetGridSize() { return m_fGridSize; }
00056
00057 private:
00058 void ClearAllArray()
00059 {
00060 if( m_pfArrayData != 0 )
00061 {
00062 delete m_pfArrayData;
00063 m_pfArrayData = 0;
00064 }
00065 if( m_pfVertexArray != 0 )
00066 {
00067 delete m_pfVertexArray;
00068 m_pfVertexArray = 0;
00069 }
00070 }
00071
00072 };