34 static const float s_fLooseOctreeFactor;
56 void CreateTree(
const plVec3& vCenter,
const plVec3& vHalfExtents,
float fMinNodeSize);
59 bool IsEmpty()
const {
return m_NodeMap.IsEmpty(); }
62 plUInt32
GetCount()
const {
return m_NodeMap.GetCount(); }
71 plResult InsertObject(
const plVec3& vCenter,
const plVec3& vHalfExtents, plInt32 iObjectType, plInt32 iObjectInstance,
76 void FindVisibleObjects(
const plFrustum& viewfrustum, PL_VISIBLE_OBJ_CALLBACK callback,
void* pPassThrough)
const;
82 void FindObjectsInRange(
const plVec3& vPoint, PL_VISIBLE_OBJ_CALLBACK callback,
void* pPassThrough =
nullptr)
const;
89 void FindObjectsInRange(
const plVec3& vPoint,
float fRadius, PL_VISIBLE_OBJ_CALLBACK callback,
90 void* pPassThrough =
nullptr)
const;
93 void RemoveObject(plInt32 iObjectType, plInt32 iObjectInstance);
99 void RemoveObjectsOfType(plInt32 iObjectType);
105 m_uiMultiMapCounter = 1;
114 float maxy,
float minz,
float maxz, plUInt32 uiNodeID, plUInt32 uiAddID, plUInt32 uiSubAddID,
plDynamicTreeObject* out_Object);
117 void FindVisibleObjects(
const plFrustum& Viewfrustum, PL_VISIBLE_OBJ_CALLBACK Callback,
void* pPassThrough,
float minx,
float maxx,
float miny,
118 float maxy,
float minz,
float maxz, plUInt32 uiNodeID, plUInt32 uiAddID, plUInt32 uiSubAddID, plUInt32 uiNextNodeID)
const;
121 bool FindObjectsInRange(
const plVec3& vPoint, PL_VISIBLE_OBJ_CALLBACK Callback,
void* pPassThrough,
float minx,
float maxx,
float miny,
float maxy,
122 float minz,
float maxz, plUInt32 uiNodeID, plUInt32 uiAddID, plUInt32 uiSubAddID, plUInt32 uiNextNodeID)
const;
125 bool FindObjectsInRange(
const plVec3& vPoint,
float fRadius, PL_VISIBLE_OBJ_CALLBACK Callback,
void* pPassThrough,
float minx,
float maxx,
126 float miny,
float maxy,
float minz,
float maxz, plUInt32 uiNodeID, plUInt32 uiAddID, plUInt32 uiSubAddID, plUInt32 uiNextNodeID)
const;
129 plUInt32 m_uiMaxTreeDepth = 0;
132 plUInt32 m_uiAddIDTopLevel = 0;
138 float m_fRealMinX = 0, m_fRealMaxX = 0, m_fRealMinY = 0, m_fRealMaxY = 0, m_fRealMinZ = 0, m_fRealMaxZ = 0;
141 plUInt32 m_uiMultiMapCounter = 0;
plUInt32 GetCount() const
Returns the number of objects that have been inserted into the tree.
Definition DynamicOctree.h:62