- Notifications
You must be signed in to change notification settings - Fork20
A sparse octree data structure.
License
NotificationsYou must be signed in to change notification settings
vanruesc/sparse-octree
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
A sparse, pointer-based octree data structure. For a linear implementation seelinear-octree.
Demo · Sandbox · Documentation
This library requires the peer dependencythree.
npm install three sparse-octree
import{Vector3}from"three";import{PointOctree}from"sparse-octree";constmin=newVector3(-1,-1,-1);constmax=newVector3(1,1,1);constoctree=newPointOctree(min,max);constmyData={};constp1=newVector3(0,0,0);constp2=newVector3(0,0,0.5);octree.set(p1,myData);octree.move(p1,p2);octree.get(p2);// => myDataoctree.remove(p2);octree.get(p2);// => null
import{Octree,CubicOctant}from"sparse-octree";exportclassCubicOctreeextendsOctree{constructor(min,size){this.root=newCubicOctant(min,size);}}
- Pointer-based structure
- Handles octant splitting
- Supports cubic octrees for reduced memory usage
- Dynamic depth
- Adheres to acommon 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.
About
A sparse octree data structure.
Topics
Resources
License
Stars
Watchers
Forks
Packages0
No packages published