sparse-octree - v7.2.0
    Preparing search index...

    sparse-octree - v7.2.0

    Sparse Octree

    CI Version

    A sparse, pointer-based octree data structure. For a linear implementation see linear-octree.

    Demo · Sandbox · Documentation

    This library requires the peer dependency three.

    npm install three sparse-octree
    
    import { Vector3 } from "three";
    import { PointOctree } from "sparse-octree";

    const min = new Vector3(-1, -1, -1);
    const max = new Vector3(1, 1, 1);

    const octree = new PointOctree(min, max);

    const myData = {};
    const p1 = new Vector3(0, 0, 0);
    const p2 = new Vector3(0, 0, 0.5);

    octree.set(p1, myData);
    octree.move(p1, p2);
    octree.get(p2); // => myData

    octree.remove(p2);
    octree.get(p2); // => null
    import { Octree, CubicOctant } from "sparse-octree";

    export class CubicOctree extends Octree {

    constructor(min, size) {

    this.root = new CubicOctant(min, size);

    }

    }
    • Pointer-based structure
      • Handles octant splitting
      • Supports cubic octrees for reduced memory usage
      • Dynamic depth
    • Adheres to a common octant layout
    • Supports raycasting
    • Supports culling
    • Can be extended to manage any data
    • Provides a point management implementation

    Maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code.