Axis Aligned Bounding Box Tree.
Holds a bounding box tree of triangles.
Performance: Insertion - Average O(log(n)) - About 0.003 ms for normal loads
- 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
|
| BBTree (INavmeshHolder graph) |
|
void | Clear () |
| Clear the tree.
|
|
void | Insert (MeshNode node) |
| Inserts a mesh node in the tree.
|
|
void | OnDrawGizmos () |
|
NNInfo | Query (Vector3 p, NNConstraint constraint) |
|
NNInfo | QueryCircle (Vector3 p, float radius, NNConstraint constraint) |
| Queries the tree for the best node, searching within a circle around p with the specified radius.
|
|
NNInfo | QueryClosest (Vector3 p, NNConstraint constraint, out float distance) |
| Queries the tree for the closest node to p constrained by the NNConstraint.
|
|
NNInfo | QueryClosest (Vector3 p, NNConstraint constraint, ref float distance, NNInfo previous) |
| Queries the tree for the closest node to p constrained by the NNConstraint trying to improve an existing solution.
|
|
NNInfo | QueryClosestXZ (Vector3 p, NNConstraint constraint, ref float distance, NNInfo previous) |
| Queries the tree for the closest node to p constrained by the NNConstraint trying to improve an existing solution.
|
|
MeshNode | QueryInside (Vector3 p, NNConstraint constraint) |
|
|
void | EnsureCapacity (int c) |
|
int | GetBox (MeshNode node) |
|
void | OnDrawGizmos (int boxi, int depth) |
|
void | SearchBox (int boxi, Vector3 p, NNConstraint constraint, ref NNInfo nnInfo) |
|
void | SearchBoxCircle (int boxi, Vector3 p, float radius, NNConstraint constraint, ref NNInfo nnInfo) |
|
void | SearchBoxClosest (int boxi, Vector3 p, ref float closestDist, NNConstraint constraint, ref NNInfo nnInfo) |
|
void | SearchBoxClosestXZ (int boxi, Vector3 p, ref float closestDist, NNConstraint constraint, ref NNInfo nnInfo) |
|
MeshNode | SearchBoxInside (int boxi, Vector3 p, NNConstraint constraint) |
|
|
static Rect | ExpandToContain (Rect r, Rect r2) |
| Returns a new rect which contains both r and r2.
|
|
static float | ExpansionRequired (Rect r, Rect r2) |
| Returns the difference in area between r and r expanded to contain r2.
|
|
static bool | NodeIntersectsCircle (MeshNode node, Vector3 p, float radius) |
|
static float | RectArea (Rect r) |
| Returns the area of a rect.
|
|
static bool | RectContains (Rect r, Vector3 p) |
| Returns if a rect contains the 3D point in XZ space.
|
|
static bool | RectIntersectsCircle (Rect r, Vector3 p, float radius) |
| Returns true if p is within radius from r.
|
|
Queries the tree for the closest node to p constrained by the NNConstraint trying to improve an existing solution.
Note that this function will, unlike QueryCircle, only fill in the constrained node. If you want a node not constrained by any NNConstraint, do an additional search with constraint = NNConstraint.None
This search will start from the previous NNInfo and improve it if possible. Even if the search fails on this call, the solution will never be worse than previous.
- Parameters
-
distance | The best distance for the previous solution. Will be updated with the best distance after this search. Will be positive infinity if no node could be found. Set to positive infinity if there was no previous solution. |
- See Also
- QueryCircle
Queries the tree for the closest node to p constrained by the NNConstraint trying to improve an existing solution.
Note that this function will, unlike QueryCircle, only fill in the constrained node. If you want a node not constrained by any NNConstraint, do an additional search with constraint = NNConstraint.None
This search will start from the previous NNInfo and improve it if possible. Even if the search fails on this call, the solution will never be worse than previous.
This method will completely ignore any Y-axis differences in positions.
- Parameters
-
distance | The best distance for the previous solution. Will be updated with the best distance after this search. Will be positive infinity if no node could be found. Set to positive infinity if there was no previous solution. |
- See Also
- QueryCircle