Class AABBTree

Public

Axis Aligned Bounding Box Tree.

Holds a bounding box tree with arbitrary data.

The tree self-balances itself regularly when nodes are added.

A* Pro Feature:

This is an A* Pathfinding Project Pro feature only. This function/class/variable might not exist in the Free version of the A* Pathfinding Project or the functionality might be limited.
The Pro version can be bought here

Inner Types

Key

A key to a leaf node in the tree.

Public Methods

Add (bounds, value)
Public
Clear ()

Removes all nodes from the tree.

Public
GetBounds (key)

Bounding box of a given node.

Public
Move (key, bounds)

Moves a node to a new position.

Public
Query (bounds, buffer)

Queries the tree for all objects that touch the specified bounds.

Public
QueryTagged (buffer, clearTags=…)

Queries the tree for all objects that have been previously tagged using the Tag method.

Public
Rebuild ()

Rebuilds the whole tree.

Public
Remove (key)
Public
Tag (key)

Tags a particular object.

Public
Tag (bounds)

Tags all objects that touch the specified bounds.

Public

Public Variables

this[Key key]

User data for a node in the tree.

Public

Private/Protected Members

AllocNode ()
Private
ArgMax (v)
Private Static
ExpansionRequired (b, b2)
Private Static
FreeNode (node)
Private
QueryNode (node, bounds, buffer)
Private
QueryTaggedNode (node, clearTags, buffer)
Private
Rebuild (leaves, parent)
Private
TagNode (node, bounds)
Private
Validate (node)
Private
freeNodes
Private Readonly
nodes
Private
rebuildCounter
Private
root
Private