Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

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

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

orxonox/trunk: calculating box dimensions

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