Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/lib/collision_detection/bv_tree.h @ 4694

Last change on this file since 4694 was 4635, checked in by patrick, 19 years ago

orxonox/trunk: implemented an elegant draw function to display the tree in different ways

File size: 867 bytes
Line 
1/*!
2    \file bv_tree.h
3    \brief Definition of a bounding volume tree
4
5*/
6
7#ifndef _BV_TREE_H
8#define _BV_TREE_H
9
10
11#include "base_object.h"
12#include "abstract_model.h"
13
14// FORWARD DEFINITION
15class BoundingVolume;
16
17typedef enum DrawMode
18{
19  DRAW_ALL               = 1<<0,
20  DRAW_SINGLE            = 1<<1,
21
22  DRAW_SEPARATING_PLANE  = 1<<2,
23  DRAW_BV_AXIS           = 1<<3,
24  DRAW_BV_BLENDED        = 1<<4,
25  DRAW_BV_POLYGON        = 1<<5,
26  DRAW_MODEL             = 1<<6
27};
28
29
30//! A class that represents a bounding volume tree
31class BVTree : public BaseObject {
32
33 public:
34  BVTree();
35  virtual ~BVTree();
36
37  virtual void spawnBVTree(int depth, sVec3D *verticesList, const int length) = NULL;
38  virtual void flushTree() = NULL;
39
40  virtual void drawBV(int depth, int drawMode) const = NULL;
41
42 protected:
43  int numberOfVertices;
44
45 private:
46
47
48};
49
50#endif /* _BV_TREE_H */
Note: See TracBrowser for help on using the repository browser.