Fills holes in meshes, interpolates point clouds, adaptively contours octrees, voxelization and much more
npm install haar-3d* Voxelize boundary representations (polygons, meshes, etc.)
* Fill holes in meshes
* Smooth or clean up noisy data
The rasterization technique is based on the following paper:
J. Manson, S. Schaefer. (2011) "Wavelet Rasterization", Computer Graphics Forum

```
npm i haar-tree-3d
`javascript
const bunny = require('bunny')
const rasterize = require('haar-tree-3d/rasterize-cells')
const contour = require('haar-tree-3d/contour')
// renders the bunny mesh into a wavelet basis
const tree = rasterize(bunny.cells, bunny.positions, {depth: 6})
// extracts an isosurface mesh contour
const isomesh = contour(tree)
`
#### var tree = require('haar-tree-3d/rasterize-cells)(cells, positions[, options])
Rasterizes a triangular mesh into a sparse wavelet representation
* cells cells are the faces of the meshpositions
* positions are the locations of the vertices of the meshoptions
* options.depth
+ depth is the depth of the octree
Returns A sparse wavelet tree encoding the meshes
#### var value = require('haar-tree-3d/sample')(tree, x, y, z)(x, y, z)
Samples the Haar wavelet tree at a specific point in 3D space
* tree is the Haar treex,y,z
* are the coordinates of the point
#### var array = require('haar-tree-3d/to-ndarray')(tree[, options])
Converts the Haar tree into an ndarray. Note that this representation is not very efficient.
* tree is the Haar tree
#### var mesh = require('haar-tree-3d/contour')(tree)
Extracts a contour from a mesh field
* tree` is a Haar tree

Development supported by Standard Cyborg.
(c) 2017- Mikola Lysenko