Fast JavaScript icosphere mesh generation library for WebGL visualizations. Interactive demo:
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.
import icomesh from 'icomesh';
// generate an icosphere with 4 subdivisions
const {vertices, triangles} = icomesh(4);
icomesh(order = 4, uvMap = false)
Generates an icosphere mesh with order
subdivisions (4
by default, 10
max).
Returns an object with:
vertices
: A Float32Array
array of x, y, z
vertices.triangles
: A Uint16Array
or Uint32Array
array of triangle indices.uv
: if uvMap
is true
, a Float32Array
of u, 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 with npm install icomesh
or yarn add icomesh
(module environments only),
or use a browser build from CDN: