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 0.15 and its center is moved to the point {3, 3, 3}.
| 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 {x, y, z} 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
1 give concave figures and that the default value of this ratio is
2.
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
2 is assumed. The default position of the sphere is
{0,0,0} with radius
1.
Truncate and
OpenTruncate act on every polygon and truncate at each vertex of the polygon. The default value of the truncation ratio is
0.3.
Here is a stellated octahedron with stellation ratio equal to 4.0. 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 a 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 "
VertexCoordinates", "
Faces", and "
Edges" properties available in
PolyhedronData give you the vertex coordinates, a list of graphics primitives for each face of the polyhedra, 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]= |  |
|