Polyhedron Operations Package
A Platonic solid is a convex polyhedron whose faces and vertices are all of the same type. There are five such solids. There are also a few nonconvex polyhedra known that have faces and vertices all of the same type. This package contains functionality for modifying some of the properties of the polyhedra available in
PolyhedronData.
| Tetrahedron | Cube |
| Octahedron | Dodecahedron |
| Icosahedron | Hexahedron |
| GreatDodecahedron | SmallStellatedDodecahedron |
| GreatStellatedDodecahedron | GreatIcosahedron |
Some of the available polyhedra.
This displays a dodecahedron centered at the origin.
| Out[2]= |  |
This displays two polyhedra simultaneously. The diameter of the icosahedron is reduced by a factor of

and its center is moved to the point

.
| Out[3]= |  |
| Stellate[PolyhedronData[polyname]] | display a stellated polyhedron |
| Stellate[PolyhedronData[polyname],ratio] |
| display a stellated polyhedron with stellation ratio ratio |
| Geodesate[PolyhedronData[polyname],n] |
| display the projection of the order n regular tessellation of each face of the polyhedron onto the circumscribed sphere |
| Geodesate[PolyhedronData[polyname],n,{x,y,z},radius] |
| display the projection of the order n regular tessellation of each face of the polyhedron onto the circumscribed sphere having center and size radius |
| Truncate[PolyhedronData[polyname]] | display a truncated polyhedron |
| Truncate[PolyhedronData[polyname],ratio] |
| display a truncated polyhedron with the polygon edges truncated by the ratio ratio |
| OpenTruncate[PolyhedronData[polyname]] |
| display a truncated polyhedron without the polygons that close the truncated vertices |
| OpenTruncate[PolyhedronData[polyname],ratio] |
| display a truncated polyhedron with edges truncated by the ratio ratio without the polygons that close the truncated vertices |
Transformation functions for polyhedra.
The polyhedra are by default centered at the origin with a unit distance from the origin to the midpoint of the edges. Any of the convex solids can be stellated using
Stellate. This replaces each of the polygon faces by a pyramid with the polygon as its base. The user can also adjust the stellation ratio. Note that ratios less than

give concave figures and that the default value of this ratio is

.
Geodesate triangulates five-sided or greater polygons before projecting onto the circumscribed sphere. If the order
n of the regular tessellation of each face is not given, a default value of

is assumed. The default position of the sphere is

with radius

.
Truncate and
OpenTruncate act on every polygon and truncate at each vertex of the polygon. The default value of the truncation ratio is

.
Here is a stellated octahedron with stellation ratio equal to

. This gives very long points.
| Out[4]= |  |
Here is an example of a polyhedron that is triangulated before being projected onto the circumscribed sphere.
| Out[5]= |  |
Here is an example of a polyhedron with edges truncated on each side by 40 percent.
| Out[6]= |  |
OpenTruncate allows you to view the interior of the truncated polyhedron.
| Out[7]= |  |
You can extract the polygon list in the form of a
GraphicsComplex from the object produced by
PolyhedronData using
First. In addition, the

,

, and

properties available in
PolyhedronData give you the vertex coordinates, a list of graphics primitives for each face of a polyhedron, and graphics primitives for the edges of a polyhedron, respectively.
Getting vertex, face, and edge data.
Here is the
GraphicsComplex object for the tetrahedron centered at the origin.
| Out[8]= |  |
These are the vertices of the tetrahedron.
| Out[9]= |  |
| Out[10]= |  |
This gives the list of
Line primitives representing the edges of the tetrahedron.
| Out[11]= |  |