The project is done under instruction of Prof. Danial Sleator (http://www.cs.cmu.edu/~sleator/). The goal of the project is to use the "Programmers Solid 3D CAD Modeller", openscad (http://www.openscad.org/) to modify the design of a puzzle. The problem with the existing puzzle is that, it can be assembled and disassembled in two ways (from the picture below, we can see there are two assembling directions), while a real "puzzle" should restrict the solution to be unique. By adding a "guiding" substructure, we've successfully reduced the degree of freedom when assembling the pieces thus achieved a "unique solution".
The "guiding" sub-structure consists of a trough and a prism, which restrict the movement of the pieces of the puzzle to be along the radius.
The code of the design is as follows:
The scad file of the design can be downloaded here.
The following is the final product of the design, printed out with the Cubify 3D printer (http://cubify.com/en/Products/Legacy)
The following is the final product of the design, printed out with the Cubify 3D printer (http://cubify.com/en/Products/Legacy)