q43

    2.1.0 • Public • Published

    Q43

    A Quadtree class for JS/ES

    Install

    npm i q43

    API

    Q43(ax, ay, bx, by, cap) ⇒ 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.

    containsX(px) ⇒ Boolean

    Check if x is within the Q43's x-axis

    Kind: global function

    Param Type
    px Number

    containsY(py) ⇒ Boolean

    Check if y is within the Q43's x-axis

    Kind: global function

    Param Type
    py Number

    containsPoint(px, py) ⇒ Boolean

    Check if point is within the Q43's x-axis

    Kind: global function

    Param Type
    px Number
    py Number

    subdivide()

    Subdivide the Q43 into four equal parts.

    Kind: global function

    insert(pt) ⇒ Boolean

    Insert a point to the Q43

    Kind: global function

    Param Type
    pt Array

    remove(pt) ⇒ Boolean

    Remove a point from the Q43

    Kind: global function

    Param Type
    pt Array

    query(cond) ⇒ 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

    all() ⇒ Array

    Get all points from the Q43

    Kind: global function Returns: Array - - array of points

    queryBounds(ax, ay, bx, by, cond) ⇒ Array

    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

    queryRange(px, py, radius, cond) ⇒ Array

    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

    for(handler)

    Iterates all points in the Q43 and passes them to a handler function

    Kind: global function

    Param Type
    handler function

    forBounds(ax, ay, bx, by, handler)

    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

    forRange(px, py, radius, handler)

    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

    rebuild() ⇒ Q43

    This is useful for rebuilding a quadtree whose points have updated coordinates.

    Kind: global function

    update()

    Unlike the rebuild method, the update method does not restore subdivided empty Q43s.

    Kind: global function

    size() ⇒ Number

    Calculates the amount of points a Q43 has.

    Kind: global function

    draw(ctx, tree, point)

    For debugging purposes

    Kind: global function

    Param Type
    ctx CanvasRenderingContext2D
    tree Boolean
    point Boolean

    Install

    npm i q43

    DownloadsWeekly Downloads

    2

    Version

    2.1.0

    License

    MIT

    Unpacked Size

    96.1 kB

    Total Files

    11

    Last publish

    Collaborators

    • lxsmnsyc