Ir al contenido

QuadTree

Defined in: spatial/QuadTree.ts:16

A quadtree spatial index for fast 2D region queries. Used for viewport culling and hit-testing optimization.

T

new QuadTree<T>(bounds, options?): QuadTree<T>

Defined in: spatial/QuadTree.ts:25

Rect

number

number

number

QuadTree<T>

get itemCount(): number

Defined in: spatial/QuadTree.ts:38

Get the total number of items in the quadtree.

number

clear(): void

Defined in: spatial/QuadTree.ts:257

Remove all items.

void


getAllItems(): T[]

Defined in: spatial/QuadTree.ts:269

Get all items in the quadtree.

T[]


getBounds(): Rect

Defined in: spatial/QuadTree.ts:33

Get the bounds of this quadtree node.

Rect


insert(x, y, data): void

Defined in: spatial/QuadTree.ts:43

Insert an item at a point.

number

number

T

void


insertWithBounds(bounds, data): void

Defined in: spatial/QuadTree.ts:56

Insert an item described by a bounding rectangle. The item is indexed by its full extent (not just its center) so a viewport/region query finds it whenever the rectangle overlaps, even if its center point doesn’t.

Rect

T

void


isLeaf(): boolean

Defined in: spatial/QuadTree.ts:264

Check if this node is a leaf (has no children).

boolean


queryCircle(cx, cy, radius): T[]

Defined in: spatial/QuadTree.ts:199

Query all items within a circle.

number

number

number

T[]


queryNearest(x, y, maxDistance): T | null

Defined in: spatial/QuadTree.ts:211

Query the nearest item to a point within maxDistance.

number

number

number

T | null


queryRegion(bounds): T[]

Defined in: spatial/QuadTree.ts:138

Query all items within a region (inclusive). Returns data items found in the region.

Rect

T[]


queryRegionWithPoints(bounds): object[]

Defined in: spatial/QuadTree.ts:173

Query items within a rectangular region. Returns data items with their positions.

Rect

object[]


remove(data): boolean

Defined in: spatial/QuadTree.ts:233

Remove an item from the quadtree.

T

boolean