Incremental Delaunay triangulation data structure.
Warning This module has problems in >3D. For those cases you should use delaunay-triangulate instead.
var createTriangulation = require("incremental-delaunay")
//Create a 2D triangulation with some points
var triangulation = createTriangulation(2, [
[0,1],
[1,0],
[1,1]
])
//Insert some random point
triangulation.insert([1, 2])
//Get all points in the triangulation
console.log("points=", triangulation.points)
//Get all cells in the triangulation
console.log("cells=", triangulation.cells)
//Locate a triangle containing a point
console.log("located triangle=", triangulation.locate([0.5, 0.5]))
Example output:
points= [ [ -1e+30, -1e+30 ],
[ 1e+30, -1e+30 ],
[ 0, 1e+30 ],
[ 0, 1 ],
[ 1, 0 ],
[ 1, 1 ],
[ 1, 2 ] ]
cells= [ [ 5, 6, 3 ],
[ 3, 6, 2 ],
[ 6, 1, 2 ],
[ 5, 1, 6 ],
[ 4, 5, 3 ],
[ 4, 1, 5 ],
[ 3, 0, 4 ],
[ 0, 1, 4 ],
[ 0, 3, 2 ] ]
located triangle= [ 3, 0, 4 ]
var createTriangulation = require("incremental-delaunay")
Creates a triangulation
dimension
is the dimension of the ambient spacepoints
is an array of points
Returns A DelaunayTriangulation
object
An array of all cells in the triangulation
An array of all points in the triangulation
Adds point
to the triangulation
Returns the simplex containing point
(c) 2013-2014 Mikola Lysenko. MIT License