Moving the Vertices of the Great Rhombicuboctahedron

Requires a Wolfram Notebook System
Interact on desktop, mobile and cloud with the free Wolfram Player or other Wolfram Language products.
With the default values of the parameters, the solid is a great rhombicuboctahedron inscribed in a cube. As you vary the parameters, the vertices move on the surface of the circumscribed cube so that adjacency is preserved. This means that the faces of these polyhedra are always octagons (yellow), hexagons (lavender), and rectangles (cyan). Because the faces are not always convex, you can create surprisingly intricate polyhedra.
Contributed by: Vincent J. Matsko (March 2011)
Open content licensed under CC BY-NC-SA
Snapshots
Details
For many pairs of parameters, the octagons and/or hexagons appear to have holes in them. Polygons whose edges cross one another are called self-intersecting. Mathematica renders such polygons by filling them in "according to an even-odd rule that alternates between filling and not at each crossing" (see the Mathematica documentation for Polygon).
Permanent Citation
"Moving the Vertices of the Great Rhombicuboctahedron"
http://demonstrations.wolfram.com/MovingTheVerticesOfTheGreatRhombicuboctahedron/
Wolfram Demonstrations Project
Published: March 7 2011