1 | import type { Particle } from "../Core/Particle";
|
2 | import type { Range } from "./Range";
|
3 | import type { Point } from "./Point";
|
4 | import { Rectangle } from "./Rectangle";
|
5 | import type { ICoordinates, IDimension } from "../Core/Interfaces";
|
6 | import type { Container } from "../Core/Container";
|
7 | export declare class QuadTree {
|
8 | readonly rectangle: Rectangle;
|
9 | readonly capacity: number;
|
10 | readonly points: Point[];
|
11 | private northEast?;
|
12 | private northWest?;
|
13 | private southEast?;
|
14 | private southWest?;
|
15 | private divided;
|
16 | constructor(rectangle: Rectangle, capacity: number);
|
17 | subdivide(): void;
|
18 | insert(point: Point): boolean;
|
19 | queryCircle(position: ICoordinates, radius: number): Particle[];
|
20 | queryCircleWarp(position: ICoordinates, radius: number, containerOrSize: Container | IDimension): Particle[];
|
21 | queryRectangle(position: ICoordinates, size: IDimension): Particle[];
|
22 | query(range: Range, found?: Particle[]): Particle[];
|
23 | }
|