Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/orxonox/trunk/src/lib/collision_detection/obb.h @ 4531

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

orxonox/trunk: some more function skeletons implemented

File size: 1.1 KB
Line 
1/*!
2    \file obb.h
3    \brief Definition of an OBB (object Oriented Bounding Box)
4
5*/
6
7#ifndef _OBB_H
8#define _OBB_H
9
10#include "base_object.h"
11#include "bounding_volume.h"
12
13
14//! A class representing an extended bounding volume tree: an obb tree
15class OBB : public BoundingVolume {
16
17 public:
18  OBB();
19  virtual ~OBB();
20
21  inline const Vector* getAxis () const { return this->axis; }
22  inline const sVect3D* getHalfLength() const { return this->halfLength; } 
23
24  virtual sVect3D* getVertices() const;
25  virtual void mergeWith(const BoundingVolume &bv);
26
27  virtual void drawBV(int currentDepth, const int depth) const;
28  virtual void drawBVPolygon(int currentDepth, const int depth) const;
29  virtual void drawBVBlended(int currentDepth, const int depth) const;
30
31
32 private:
33  Vector*          axis;                       //!< Axes of oriented box [x,y,z]
34  sVect3D*         halfLength;                 //!< Half lengths of the box
35
36  OBB*             leftNode;                   //!< left node of the tree
37  OBB*             rightNode;                  //!< right node of the tree
38};
39
40#endif /* _OBB_H */
Note: See TracBrowser for help on using the repository browser.