Happy Cube Solver Documentation

2.0.2

Introduction

The Happy Cube Solver is an interactive environment based on OpenGL for designing and building cubes and formations from the Happy Cube 3D puzzles. It integrates a graphic engine for creating and viewing formations and a powerful computational engine for solving them.

Happy Cubes are small foamy puzzles made of pieces of about 4cm by 4cm by 8 mm in size The puzzles come in groups of 6 such pieces of the same color or texture. When assembled, these pieces make up a basic cube of about 4cm by 4cm by 4cm in size. Pieces of several different Happy Cube puzzles can be joined together to make up larger and more complex structures. Such a sturcture is for instance the "double tower" which is made of 10 pieces and is shaped like two cubes one on top of the other. another example for a complex structure is the "star" which is made of 30 pieces arranged as 6 cubes joined at a common missing face.

see The Happy Cube Website for more information about the Happy Cube puzzles.

Normally, designing and building a complex structure can be a long and daunting task due to the large amount of pieces and assembly possibilities. The Happy Cube Solver takes away the pain of this task and leaves the fun parts of designing the structure and assembling it out of Happy Cube pieces. The Happy Cube Solver allows the user to design the structures he wishes to build in a full 3D space. The user can rotate and view the design in any angle and add or remove cubes to it. Once the structure is complete, the user can select the pieces set of which to assemble out of the large variety of available Happy Cube pieces. this set should coincide with the set of pieces the user actually own physically for later assembly. Pressing "Solve It" in the main GUI would start the solution engine. After a few seconds to few minutes, depending on the structure size and piece set, The solver will find a solution to the structure and again, display it in full 3D space for the user to rotate and view.

This manual is the code documentation of the Happy Cube Solver.