primitive-cylinder

    1.0.3 • Public • Published

    primitive-cylinder

    stable

    screen

    (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)
     
    // the simplicial complex
    console.log(mesh.positions, mesh.cells)
     
    // rendering attributes
    console.log(mesh.uvs)
    console.log(mesh.normals)

    Usage

    NPM

    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.

    Install

    npm i primitive-cylinder

    DownloadsWeekly Downloads

    25

    Version

    1.0.3

    License

    MIT

    Unpacked Size

    7.48 kB

    Total Files

    4

    Last publish

    Collaborators

    • ataber