AI_SDB_SpatialSector Class Reference
[Spatial Database]
#include <AI_SDB_SpatialSector.h>
Detailed Description
A collection of elements in a specific region of space.A sector represents a section of space with a bunch of objects in it. Note that the sector could be infinite in size, which is typically used for top or root-level sectors. Having finite-size sectors is encouraged where possible since it allows the spatial querying to work more efficiently.
You can query a sector with a AI_SDB_VisibilityVisitor or AI_SDB_SpatialVisitor, of which there are various types in order to perform different kinds of queries.
Sectors are typically connected to each other by portals. You can also nest sectors within each other using the NOH; a sector contains all the sectors that are child nodes of this sector.
Public Types | |
typedef AI_SDB_SpatialElement * | ElementHandle |
Somewhat-opaque handle to elements within the sector. | |
Public Member Functions | |
AI_SDB_SpatialSector () | |
~AI_SDB_SpatialSector () | |
void | Configure (const AI_Matrix44 &transformtoglobalspace) |
set the local coordinate system of the sector | |
virtual ElementHandle | AddElement (AI_SDB_SpatialElement *addme) |
virtual void | UpdateElement (ElementHandle elementid, const AI_BBox &newbbox) |
virtual void | RemoveElement (ElementHandle elementid) |
virtual void | Accept (AI_SDB_VisibilityVisitor &v, int recursiondepth, AI_SDB_VisitorFlags flags=AI_SDB_VisitorFlags()) |
virtual void | Accept (AI_SDB_SpatialVisitor &v, int recursiondepth, AI_SDB_VisitorFlags flags=AI_SDB_VisitorFlags()) |
virtual void | Accept (AI_SDB_OcclusionVisitor &v, int recursiondepth, AI_SDB_VisitorFlags flags=AI_SDB_VisitorFlags()) |
Protected Attributes | |
AI_SDB_SpatialAABBTree | m_Nodeset |
Member Typedef Documentation
Somewhat-opaque handle to elements within the sector.
Constructor & Destructor Documentation
AI_SDB_SpatialSector::AI_SDB_SpatialSector | ( | ) |
AI_SDB_SpatialSector::~AI_SDB_SpatialSector | ( | ) |
Member Function Documentation
void AI_SDB_SpatialSector::Configure | ( | const AI_Matrix44 & | transformtoglobalspace | ) |
set the local coordinate system of the sector
AI_SDB_SpatialSector::ElementHandle AI_SDB_SpatialSector::AddElement | ( | AI_SDB_SpatialElement * | addme | ) | [virtual] |
void AI_SDB_SpatialSector::UpdateElement | ( | AI_SDB_SpatialSector::ElementHandle | elementid, | |
const AI_BBox & | newbbox | |||
) | [virtual] |
void AI_SDB_SpatialSector::RemoveElement | ( | AI_SDB_SpatialSector::ElementHandle | elementid | ) | [virtual] |
void AI_SDB_SpatialSector::Accept | ( | AI_SDB_VisibilityVisitor & | v, | |
int | recursiondepth, | |||
AI_SDB_VisitorFlags | flags = AI_SDB_VisitorFlags() | |||
) | [virtual] |
void AI_SDB_SpatialSector::Accept | ( | AI_SDB_SpatialVisitor & | v, | |
int | recursiondepth, | |||
AI_SDB_VisitorFlags | flags = AI_SDB_VisitorFlags() | |||
) | [virtual] |
void AI_SDB_SpatialSector::Accept | ( | AI_SDB_OcclusionVisitor & | v, | |
int | recursiondepth, | |||
AI_SDB_VisitorFlags | flags = AI_SDB_VisitorFlags() | |||
) | [virtual] |
Member Data Documentation
The documentation for this class was generated from the following files: