primitive-cylinder


(demo)
A minimal 3D cylindrical geometry, including normals, UVs, and mesh.
Example
var cylinder = require('primitive-cylinder')
var mesh = cylinder(10, 10, 50, 10, 10)
console.log(mesh.positions, mesh.cells)
console.log(mesh.uvs)
console.log(mesh.normals)
Usage

mesh = cylinder(radiusTop, radiusBottom, height, radialSegments, heightSegments)
Creates a new torus with options:
radiusTop
the radius of the cylinder at the top
radiusBottom
the radius of the cylinder at the bottom
height
the height of the cylinder
radialSegments
the number of segments for the radial axis
heightSegments
the number of segments for the height axis
The returned mesh is an object with the following data:
{
positions: [ [x, y, z], [x, y, z], ... ],
cells: [ [a, b, c], [a, b, c], ... ],
uvs: [ [u, v], [u, v], ... ],
normals: [ [x, y, z], [x, y, z], ... ]
}
Note that you can build a cone by setting one of the radii to be zero.
Contributing
See stackgl/contributing for details.
Credits
The algorithm here is from ThreeJS CylinderGeometry.
License
MIT. See LICENSE.md for details.