stratgame

annotate level/src/terrain.h @ 4:cd12944a8ea8

foo
author John Tsiombikas <nuclear@member.fsf.org>
date Fri, 25 May 2012 05:28:20 +0300
parents
children 2e38715de41b
rev   line source
nuclear@4 1 #ifndef TERRAIN_H_
nuclear@4 2 #define TERRAIN_H_
nuclear@4 3
nuclear@4 4 #include <string>
nuclear@4 5 #include <map>
nuclear@4 6
nuclear@4 7 class TerrainNode;
nuclear@4 8
nuclear@4 9 class Terrain {
nuclear@4 10 private:
nuclear@4 11 TerrainNode *root;
nuclear@4 12
nuclear@4 13 public:
nuclear@4 14 Terrain();
nuclear@4 15 ~Terrain();
nuclear@4 16
nuclear@4 17 float get_height(float x, float y) const;
nuclear@4 18 };
nuclear@4 19
nuclear@4 20
nuclear@4 21 class TerrainNode {
nuclear@4 22 private:
nuclear@4 23 unsigned char *height;
nuclear@4 24
nuclear@4 25 public:
nuclear@4 26 TerrainNode *child[4];
nuclear@4 27
nuclear@4 28 TerrainNode();
nuclear@4 29 ~TerrainNode();
nuclear@4 30
nuclear@4 31 TerrainNode *get_child(float x, float y);
nuclear@4 32 const TerrainNode *get_child(float x, float y) const;
nuclear@4 33
nuclear@4 34 float get_height(float x, float y) const;
nuclear@4 35 };
nuclear@4 36
nuclear@4 37 #endif // TERRAIN_H_