Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/lib/collision_detection/bounding_volume.h @ 4817

Last change on this file since 4817 was 4814, checked in by patrick, 19 years ago

orxonox/trunk: the vertices data and the obb trees now get deleted, in the resume at the end (Class_list) there are still a number of references, will track this down now

File size: 1.2 KB
Line 
1/*!
2    \file bounding_volume.h
3    \brief Definition of a bounding volume for collision detection algorithms
4
5 */
6
7#ifndef _BOUNDING_VOLUME_H
8#define _BOUNDING_VOLUME_H
9
10#include "base_object.h"
11#include "abstract_model.h"
12
13class Vector;
14template<class T> class tList;
15
16
17//! An abstract class representing a bounding volume
18class BoundingVolume : public BaseObject {
19
20  public:
21    BoundingVolume();
22    virtual ~BoundingVolume();
23
24    inline const Vector* getCenter() const { return this->center; }
25
26    sVec3D* getVertices() const { return this->vertices; }
27    virtual void mergeWith(const BoundingVolume &bv) = NULL;
28
29    virtual void drawBV(int currentDepth, int drawMode) const = NULL;
30
31
32
33  public:
34    Vector*             center;                     //!< Center point of box
35
36    sVec3D*             vertices;                   //!< if CD_STORE_VERTICES enabled, this is the place, where the vert. will be sotred
37    int                 numOfVertices;              //!< number of vertices in the vertices buffer
38    bool                bOrigVertices;              //!< is true if the vertices pointer points to the original model data - only important for deleting
39};
40
41#endif /* _BOUNDING_VOLUME_H */
Note: See TracBrowser for help on using the repository browser.