1.3.6 • Published 2 years ago
voxel-triangulation v1.3.6
voxel-triangulation.js
converts voxels into a set of triangles using ndarray and libtess.js. It is used by the vox-viewer web component.
💾 Installation
npm install voxel-triangulation
🚀 Usage
const ndarray = require('ndarray');
const triangulateVoxels = require('voxel-triangulation');
let values = [
0, 1, 0,
0, 1, 2,
0, 1, 0,
0, 1, 0,
0, 0, 2,
0, 1, 0,
0, 1, 0,
0, 0, 2,
0, 0, 0
];
let voxels = new ndarray(values, [3, 3, 3]);
// gives list of voxel values which will be excluded (handled as void)
let config = { exclude: [0] };
let triangulation = triangulateVoxels(voxels, config);
// outputs an object with vertices, normals, indices, uvs and voxel values of the triangles
console.log(triangulation);
// vertices (3 entries for every vertex): [ v1.x, v1.y, v1.z, v2.x, v2.y, v2.z, ... ]
// normals (3 entries for every vertex): [ n1.x, n1.y, n1.z, n2.x, n2.y, n2.z, ... ]
// indices (3 entries for every face): [ f1.a, f1.b, f1.c, f2.a, f2.b, f2.c, ... ]
// uvs (2 for every vertex): [ v1.u, v1.v, v2.u, v2.v, ... ]
// voxelValues (1 entry for every face): [ value1, value2, ... ]
👀 Demo
You can see a live demo here
📖 License
(c) 2019 Florian Fechner. MIT License
1.3.6
2 years ago
1.3.5
2 years ago
1.3.4
3 years ago
1.3.3
3 years ago
1.3.2
3 years ago
1.3.1
3 years ago
1.3.0
3 years ago
1.2.0
3 years ago
1.1.9
4 years ago
1.1.8
4 years ago
1.1.7
4 years ago
1.1.6
4 years ago
1.1.5
4 years ago
1.1.4
4 years ago
1.1.3
4 years ago
1.1.2
4 years ago
1.1.1
4 years ago
1.1.0
4 years ago
1.0.2
5 years ago
1.0.1
5 years ago
1.0.0
5 years ago