Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/collision_detection/src/lib/collision_detection/bv_tree_node.h @ 5825

Last change on this file since 5825 was 5718, checked in by patrick, 19 years ago

collision_detection: and again a heavy cleanup in the function arguments

File size: 1.1 KB
RevLine 
[4618]1/*!
[5039]2 * @file bv_tree.h
[4836]3  *  Definition of a bounding volume tree
[4541]4
5*/
6
7#ifndef _BV_TREE_NODE_H
8#define _BV_TREE_NODE_H
9
10#include "base_object.h"
[4548]11#include "abstract_model.h"
[5481]12#include "vector.h"
[4541]13
[5405]14// FORWARD DECLARATION
[4541]15class BoundingVolume;
16class BVTree;
[4700]17class PNode;
[5028]18class WorldEntity;
[4542]19template<class T> class tList;
[4541]20
[5718]21
[4541]22//! A class that represents a bounding volume tree
23class BVTreeNode : public BaseObject {
24
[5718]25
[4541]26 public:
27  BVTreeNode();
28  virtual ~BVTreeNode();
29
[5717]30  virtual const BoundingVolume* getBV() const = 0;
31  inline const int getIndex() const { return this->treeIndex; }
32
[5716]33  virtual void spawnBVTree(const sVec3D *verticesList, unsigned int length ) = 0;
34  virtual void spawnBVTree(const modelInfo& modInfo, const int* triangleIndexes, unsigned int length) = 0;
[4541]35
[5717]36  virtual void collideWith(const BVTreeNode& treeNode, const WorldEntity& nodeA, const WorldEntity& nodeB) const = 0;
[4541]37
[5481]38  virtual void drawBV(int depth, int drawMode, const Vector& color = Vector(1,0,0), bool top = true) const = 0;
[4541]39
40
41 private:
42  unsigned int        treeIndex;                  //!< Index number of the BV in the tree
43
44};
45
46#endif /* _BV_TREE_NODE_H */
Note: See TracBrowser for help on using the repository browser.