home *** CD-ROM | disk | FTP | other *** search
- #ifndef __Quadtree_h__
- #define __Quadtree_h__
-
- /*!
- \file quadtree.h
- \author Karsten Schwenk
-
- \brief This file contains the implementation of a quadtree (class #Quadtree).
-
- \see sptree.h
- */
-
- //#include "model.h"
- //#include "vectormath.h"
- #include "SpacePartitioningTree.h"
- #ifndef WIN32
- #include <string.h>
- #endif
-
- enum quadtreeNeightbour_e{
- QUADTREE_NEIGHBOUR_LEFT=0,
- QUADTREE_NEIGHBOUR_RIGHT,
- QUADTREE_NEIGHBOUR_UP,
- QUADTREE_NEIGHBOUR_DOWN,
-
- QUADTREE_NUM_NEIGHBOURS
-
- };
-
- enum quadtreeChilds_e{
- QUADTREE_CHILD_LOWER_RIGHT=0,
- QUADTREE_CHILD_LOWER_LEFT,
- QUADTREE_CHILD_UPPER_LEFT,
- QUADTREE_CHILD_UPPER_RIGHT,
-
- QUADTREE_NUM_CHILDS
-
- };
-
-
- class QuadtreeNode;
-
- class Quadtree:public SpacePartitioningTree{
- public:
- Quadtree(Model* model);
- ~Quadtree();
- };
-
- class QuadtreeNode:public SpacePartitioningTreeNode{
- public:
- QuadtreeNode(Quadtree* tree);
- ~QuadtreeNode();
-
- void buildNode();
- void buildNeighbourhoodInfo();
- };
-
- #endif /* __Quadtree_h__ */
-
-