A cluster of object for fast BBox clip. More...
#include <quad_grid_clip_cluster.h>
Public Member Functions | |
| CQuadGridClipCluster (uint numDist, float distMax, const NLMISC::CAABBox &pivot) | |
| Constructor. | |
| ~CQuadGridClipCluster () | |
| void | addModel (const NLMISC::CAABBox &worldBBox, CTransformShape *model) |
| void | removeModel (CTransformShape *model) |
| void | clip (CClipTrav *clipTrav) |
| bool | isEmpty () const |
| const NLMISC::CAABBox & | getBBox () const |
| sint | profileNumChildren (uint distLevel) const |
| void | resetSons (CClipTrav *clipTrav) |
Public Attributes | |
| CFastPtrListNode | ListNode |
Protected Attributes | |
| float | _DistMax |
| uint | _NumDist |
| uint | _NumDistTotal |
| CQuadGridClipClusterQTreeNode | _Root |
Friends | |
| class | CQuadGridClipClusterQTreeNode |
A cluster of object for fast BBox clip.
Definition at line 116 of file quad_grid_clip_cluster.h.
| NL3D::CQuadGridClipCluster::CQuadGridClipCluster | ( | uint | numDist, | |
| float | distMax, | |||
| const NLMISC::CAABBox & | pivot | |||
| ) |
Constructor.
Definition at line 397 of file quad_grid_clip_cluster.cpp.
References _DistMax, _NumDist, _NumDistTotal, _Root, NL3D::CQuadGridClipClusterQTreeNode::init(), and NL3D_QUADGRID_CLIP_CLUSTER_DEPTH.
| NL3D::CQuadGridClipCluster::~CQuadGridClipCluster | ( | ) |
Definition at line 407 of file quad_grid_clip_cluster.cpp.
| void NL3D::CQuadGridClipCluster::addModel | ( | const NLMISC::CAABBox & | worldBBox, | |
| CTransformShape * | model | |||
| ) |
Definition at line 412 of file quad_grid_clip_cluster.cpp.
References _DistMax, _NumDist, NL3D::CTransformShape::_QuadClusterListNode, _Root, NLMISC::clamp(), NL3D::CTransformShape::getDistMax(), NL3D::CQuadGridClipClusterQTreeNode::insertModel(), NL3D::CFastPtrListNode::isLinked(), and nlassert.
Referenced by NL3D::CQuadGridClipManager::linkModel().
| void NL3D::CQuadGridClipCluster::clip | ( | CClipTrav * | clipTrav | ) |
Definition at line 442 of file quad_grid_clip_cluster.cpp.
References _Root, NL3D::CQuadGridClipClusterQTreeNode::clip(), and H_AUTO_USE.
| const NLMISC::CAABBox& NL3D::CQuadGridClipCluster::getBBox | ( | ) | const [inline] |
Definition at line 136 of file quad_grid_clip_cluster.h.
References _Root, and NL3D::CQuadGridClipClusterQTreeNode::BBox.
Referenced by NL3D::CQuadGridClipManager::profile().
| bool NL3D::CQuadGridClipCluster::isEmpty | ( | ) | const [inline] |
Definition at line 135 of file quad_grid_clip_cluster.h.
References _Root, and NL3D::CQuadGridClipClusterQTreeNode::Empty.
Referenced by NL3D::CQuadGridClipManager::linkModel(), and NL3D::CQuadGridClipManager::profile().
Definition at line 458 of file quad_grid_clip_cluster.cpp.
References _Root, and NL3D::CQuadGridClipClusterQTreeNode::profileNumChildren().
Referenced by NL3D::CQuadGridClipManager::profile().
| void NL3D::CQuadGridClipCluster::removeModel | ( | CTransformShape * | model | ) |
Definition at line 435 of file quad_grid_clip_cluster.cpp.
References NL3D::CTransformShape::_QuadClusterListNode, and NL3D::CFastPtrListNode::unlink().
| void NL3D::CQuadGridClipCluster::resetSons | ( | CClipTrav * | clipTrav | ) |
Definition at line 451 of file quad_grid_clip_cluster.cpp.
References _Root, and NL3D::CQuadGridClipClusterQTreeNode::resetSons().
Referenced by NL3D::CQuadGridClipManager::deleteCaseModels().
friend class CQuadGridClipClusterQTreeNode [friend] |
Definition at line 142 of file quad_grid_clip_cluster.h.
float NL3D::CQuadGridClipCluster::_DistMax [protected] |
Definition at line 145 of file quad_grid_clip_cluster.h.
Referenced by addModel(), NL3D::CQuadGridClipClusterQTreeNode::clip(), CQuadGridClipCluster(), and NL3D::CQuadGridClipClusterQTreeNode::noFrustumClip().
uint NL3D::CQuadGridClipCluster::_NumDist [protected] |
Definition at line 147 of file quad_grid_clip_cluster.h.
Referenced by addModel(), NL3D::CQuadGridClipClusterQTreeNode::clip(), CQuadGridClipCluster(), and NL3D::CQuadGridClipClusterQTreeNode::noFrustumClip().
uint NL3D::CQuadGridClipCluster::_NumDistTotal [protected] |
Definition at line 149 of file quad_grid_clip_cluster.h.
Referenced by CQuadGridClipCluster(), and NL3D::CQuadGridClipClusterQTreeNode::init().
Definition at line 152 of file quad_grid_clip_cluster.h.
Referenced by addModel(), clip(), CQuadGridClipCluster(), getBBox(), isEmpty(), profileNumChildren(), and resetSons().
Definition at line 120 of file quad_grid_clip_cluster.h.
Referenced by NL3D::CQuadGridClipManager::linkModel().
1.6.1