1.0.3 • Published 6 years ago
primitive-cylinder v1.0.3
primitive-cylinder
A minimal 3D cylindrical geometry, including normals, UVs, and mesh.
Example
var cylinder = require('primitive-cylinder')
var mesh = cylinder(10, 10, 50, 10, 10)
// the simplicial complex
console.log(mesh.positions, mesh.cells)
// rendering attributes
console.log(mesh.uvs)
console.log(mesh.normals)Usage
mesh = cylinder(radiusTop, radiusBottom, height, radialSegments, heightSegments)
Creates a new torus with options:
radiusTopthe radius of the cylinder at the topradiusBottomthe radius of the cylinder at the bottomheightthe height of the cylinderradialSegmentsthe number of segments for the radial axisheightSegmentsthe 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.

