3D mesh drawing
npm install gl-mesh3dgl-mesh3d
=====================
Visualization module for meshes/point clouds/graphs.
``javascript
var createScene = require('gl-plot3d')
var createMesh = require('gl-mesh3d')
var bunny = require('bunny')
var scene = createScene()
var mesh = createMesh({
gl: scene.gl,
cells: bunny.cells,
positions: bunny.positions,
colormap: 'jet'
})
scene.add(mesh)
`
Try out the example in your browser
``
npm i gl-mesh3d
Basic interface
#### var mesh = require('gl-mesh3d')(params)
Creates a simplicial complex that can be drawn directly in a WebGL context.
* params is an object that has the following properties:
+ gl A reference to the WebGL contextcells
+ (Required) An indexed list of vertices, edges and/or faces.positions
+ (Required) An array of positions for the mesh, encoded as arraysvertexColors
+ A list of per vertex color attributes encoded as length 3 rgb arraysvertexUVs
+ cellUVs
+ vertexIntensity
+ colormap
+ vertexIntensityBounds
+ intensity range for the colormapcellIntensity
+ cellColors
+ A list of per cell color attributesmeshColor
+ A constant color for the entire meshvertexNormals
+ An array of per vertex normalscellNormals
+ An array of per cell normalsuseFacetNormals
+ A flag which if set to true forces cellNormals to be computedpointSizes
+ An array of point sizespointSize
+ A single point size floatambientLight
+ ambient light color * intensitydiffuseLight
+ diffuse light color * intensityspecularLight
+ specular light colorlightPosition
+ location of lightroughness
+ surface roughnessfresnel
+ surface glossiness/"rim light" factoropacity
+ surface opacity
Returns A renderable mesh object
#### mesh.update(params)
Updates the contents of the simplicial complex in place.
* params is a list of parameters which are in the same format as the constructor
#### mesh.lightPosition
The 3D position of the directional light source
#### mesh.ambientLight
Ambient light color
#### mesh.diffuseLight
Diffuse light color
#### mesh.specularLight
Specular light color
#### mesh.roughness
Mesh surface roughness
#### mesh.fresnel
Fresnel parameter
#### mesh.vertexNormalsEpsilon
Epsilon for vertex normals calculation
#### mesh.faceNormalsEpsilon
Epsilon for face normals calculation
#### mesh.opacity`
Opacity