A Quadtree class for JS/ES
npm i q43
Create a Q43 instance
Kind: global function
Param | Type | Description |
---|---|---|
ax | Number |
minimum X of the Q43 boundary |
ay | Number |
minimum Y of the Q43 boundary |
bx | Number |
maximum X of the Q43 boundary |
by | Number |
maximum Y of the Q43 boundary |
cap | Number |
The amount of points a Q43 instance can store. |
Check if x is within the Q43's x-axis
Kind: global function
Param | Type |
---|---|
px | Number |
Check if y is within the Q43's x-axis
Kind: global function
Param | Type |
---|---|
py | Number |
Check if point is within the Q43's x-axis
Kind: global function
Param | Type |
---|---|
px | Number |
py | Number |
Subdivide the Q43 into four equal parts.
Insert a point to the Q43
Kind: global function
Param | Type |
---|---|
pt | Array |
Remove a point from the Q43
Kind: global function
Param | Type |
---|---|
pt | Array |
Get all points from the Q43 given a condition
Kind: global function
Returns: Array
- - array of points
Param | Type | Description |
---|---|---|
cond | function |
the filter function |
Get all points from the Q43
Kind: global function
Returns: Array
- - array of points
Get all points from a Q43 that is within a given boundary and passes the condition
Kind: global function
Returns: Array
- - array of points
Param | Type | Description |
---|---|---|
ax | Number |
minimum x of the given boundary |
ay | Number |
minimum y of the given boundary |
bx | Number |
maximum x of the given boundary |
by | Number |
maximum y of the given boundary |
cond | function |
a filter function, optional |
Gets all points within the radius of another point from the Q43
Kind: global function
Param | Type | Description |
---|---|---|
px | Number |
|
py | Number |
|
radius | Number |
|
cond | function |
filter function, optional |
Iterates all points in the Q43 and passes them to a handler function
Kind: global function
Param | Type |
---|---|
handler | function |
Iterates all points in the Q43 that are within the bounds and passes them to a handler function. Kind: global function
Param | Type |
---|---|
ax | Number |
ay | Number |
bx | Number |
by | Number |
handler | function |
Iterates all points within the radius of another point in the Q43 and passes them to a handler.
Kind: global function
Param | Type |
---|---|
px | Number |
py | Number |
radius | Number |
handler | function |
This is useful for rebuilding a quadtree whose points have updated coordinates.
Unlike the rebuild method, the update method does not restore subdivided empty Q43s.
Calculates the amount of points a Q43 has.
For debugging purposes
Kind: global function
Param | Type |
---|---|
ctx | CanvasRenderingContext2D |
tree | Boolean |
point | Boolean |