Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals

pge::Quadtree Class Reference

#include <Quadtree.h>

Inheritance diagram for pge::Quadtree:

Inheritance graph
[legend]
Collaboration diagram for pge::Quadtree:

Collaboration graph
[legend]

Public Member Functions

 Quadtree (MeshModel *model, int minMeshsPerNode, bool occlusionCulling)
 Constructor.

virtual ~Quadtree (void)
 Destructor.

bool init (void)
void render (void)
 Called when the object should render itself.

void timer (unsigned int delay)
 Called when the timer event comes.


Private Attributes

MeshModelm_model
QuadtreeNodem_root
int m_minMeshsPerNode
bool m_occlusionCulling

Constructor & Destructor Documentation

pge::Quadtree::Quadtree MeshModel model,
int  minMeshsPerNode,
bool  occlusionCulling
 

Constructor.

Definition at line 281 of file Quadtree.cpp.

References m_minMeshsPerNode, m_model, m_occlusionCulling, and m_root.

00281                                                                                        {
00282                 m_model = model;
00283                 m_root = NULL;
00284                 m_minMeshsPerNode = minMeshsPerNode;
00285                 m_occlusionCulling = occlusionCulling;
00286         }

pge::Quadtree::~Quadtree void   )  [virtual]
 

Destructor.

Definition at line 294 of file Quadtree.cpp.

References m_model, and m_root.

00294                                 {
00295                 if(m_root != NULL) {
00296                         delete m_root;
00297                         m_root = NULL;
00298                 }
00299                 if(m_model != NULL) {
00300                         delete m_model;
00301                         m_model = NULL;
00302                 }
00303         }
00304 


Member Function Documentation

bool pge::Quadtree::init void   )  [virtual]
 

Implements pge::IRenderableObject.

Definition at line 312 of file Quadtree.cpp.

References pge::MeshModel::getBoundingBox(), pge::MeshModel::getMeshs(), pge::MeshModel::init(), pge::QuadtreeNode::initRootNode(), m_minMeshsPerNode, m_model, m_occlusionCulling, and m_root.

00312                                     {
00313                         m_model->init();
00314                         m_root = new QuadtreeNode(new AABB(*m_model->getBoundingBox()), m_minMeshsPerNode, m_occlusionCulling);
00315                         m_root->initRootNode(m_model->getMeshs());
00316                         //printf("INFO: [%s] Rootnode meshs: %d\n", __FILE__, m_root->getMeshNum());
00317                         return true;
00318                 }
00319                 return false;
00320         }
00321 

Here is the call graph for this function:

void pge::Quadtree::render void   )  [virtual]
 

Called when the object should render itself.

Implements pge::IRenderableObject.

Definition at line 329 of file Quadtree.cpp.

References m_root.

void pge::Quadtree::timer unsigned int  delay  )  [virtual]
 

Called when the timer event comes.

Implements pge::IRenderableObject.

Definition at line 340 of file Quadtree.cpp.

References m_model.


Field Documentation

int pge::Quadtree::m_minMeshsPerNode [private]
 

Definition at line 122 of file Quadtree.h.

Referenced by init(), and Quadtree().

MeshModel* pge::Quadtree::m_model [private]
 

Definition at line 120 of file Quadtree.h.

Referenced by init(), Quadtree(), timer(), and ~Quadtree().

bool pge::Quadtree::m_occlusionCulling [private]
 

Definition at line 123 of file Quadtree.h.

Referenced by init(), and Quadtree().

QuadtreeNode* pge::Quadtree::m_root [private]
 

Definition at line 121 of file Quadtree.h.

Referenced by init(), Quadtree(), render(), and ~Quadtree().


The documentation for this class was generated from the following files:
Generated on Mon Oct 16 12:09:28 2006 for Phobosengine by doxygen 1.3.4