Awesome
icomesh
Fast JavaScript icosphere mesh generation library for WebGL visualizations. Interactive demo:
<a href="https://observablehq.com/@mourner/fast-icosphere-mesh"><img alt="Icosphere mesh" src="https://user-images.githubusercontent.com/25395/65533055-a6561280-df05-11e9-89d5-37477274b4af.png"></a>
Icosphere is a type of geodesic polyhedron that provides a good quality triangular mesh approximation of a sphere with relatively evenly distributed vertices. This project is inspired by an article by Andreas Kahler.
Example
import icomesh from 'icomesh';
// generate an icosphere with 4 subdivisions
const {vertices, triangles} = icomesh(4);
API
icomesh(order = 4, uvMap = false)
Generates an icosphere mesh with order
subdivisions (4
by default, 10
max).
Returns an object with:
vertices
: AFloat32Array
array ofx, y, z
vertices.triangles
: AUint16Array
orUint32Array
array of triangle indices.uv
: ifuvMap
istrue
, aFloat32Array
ofu, v
values for mapping vertices to a texture with an equirectangular projection.
You can reuse vertex data for normals because they are equal for a unit sphere.
Install
Install with npm install icomesh
or yarn add icomesh
(module environments only),
or use a browser build from CDN: