A port of George Hart's JavaScript implementation/extension of Conway's polyhedral notation to the CommonJS module system. Here are some useful links that can help explain what it all means:
- George Hart's original implementation: http://www.georgehart.com/virtual-polyhedra/conway_notation.html
- The Wikipedia page on Conway's notation
Just use npm:
npm install conway-hart
Here is an example showing how to use this library to generate a shape:
require("conway-hart")("djmeD");
Which produces the following polygon:
If you want to try it out for yourself without installing node.js, here is an interactive WebGL demo.
Conway/Hart notation is a way of specifying spherical polyhedra by subdividing regular polyhedra. The way it works is that you first specify a seed polyhedra, and then apply a sequence of operators. At the end, it returns a JavaScript object with 3 fields:
name
: The name of the solid.cells
: The faces of the solid, represented as a list of indices into the vertices.positions
: The positions of the vertices of the solid.
If there is an error parsing the input, an exception is thrown.
Here is a list of all the available seeds. The ones with an n
next to their symbol take an extra parameter describing how many faces are on their base.
(c) 1998 George Hart. GPL
CommonJS port maintained by Mikola Lysenko.