A GUI application for generating and visualizing polyhedra using geometric operations.
Seed polyhedra are provided as the five Platonic solids. The following operations can be combined in different orders to create new and complex polyhedra:
- Truncation- creates new faces at each vertex
- Rectification- constructs new vertices from edges
- Faceting- keeps vertices but makes new faces from them
- Reciprocation- converts vertices to faces and vice versa
Shapeshift displays these resulting polyhedra in 3D rotation and provides details on vertices, edges, and faces.
Shapeshift uses Python3 along with the following packages:
moderngl
for polyhedron visualizationnumpy
for numerical calculationspyrr
for matrix creationpyside6
for window and widgetssympy
for symbolic notation
The dependencies and their versions are stored in requirements.txt
. These can be installed with the following code while in the highest-level package directory:
python3 -m pip install -r requirements.txt
The GUI itself can then be opened as follows:
python3 window.py