Package Exports
- primitive-torus
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (primitive-torus) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
primitive-torus
A minimal 3D torus geometry for 3D rendering, including normals, UVs, and cell indices.
Example
var torus = require('primitive-torus')
var mesh = torus()
// the simplicial complex
console.log(mesh.positions, mesh.cells)
// rendering attributes
console.log(mesh.uvs)
console.log(mesh.normals)
Usage
mesh = torus([opt])
Creates a new torus with options:
majorRadius
the radius of the major ringR
, default 1.0minorRadius
the radius of the minor ringr
, default 0.25majorSegments
the number of segments for the major ring, default 32minorSegments
the number of segments for the minor ring, defualt 64arc
the arc to draw, defaultMath.PI * 2
(full circle)
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], ... ]
}
Credits
The algorithm here is from ThreeJS TorusGeometry.
License
MIT. See LICENSE.md for details.