I wrote this code as an exercise in procedurally generating 3D-printable objects.
The algorithm creates six pieces that fit together to form a cube. Since the puzzle is randomly generated, even the puzzle’s creator can have the satisfaction of solving it for themselves!
First install SolidPython and Numpy:
pip install solidpython numpy
To run the script:
python puzzle_cube.py [--size SIZE] [--shape X Y Z] [--stl]
Optional arguments:
For example:
python puzzle_cube.py --size 10 --shape 4 4 4 --stl
A puzzle produced with these settings is provided. Enjoy :)
To contribute, see the Github repo.