The first part of this user guide is written from a procedural approach. Rather than sequentially describing the elements of the GUI and their functions, this manual guides you through the program the way you should create your first design. Terms may be briefly repeated at several places in the text.
Throughout the text the following fonts and notations are used:
Roman | This font is used for the main text. |
Roman Italics | Italics are used to emphasis words or sentences in the main text. |
Roman Bold | Used for titles, subtitles and concepts. |
Sans Serif | Used for elements of the GUI. The same wording is used as in the GUI. |
Sans Serif Bold | Used for elements of the GUI and indicating that an in-depth explanation follows. |
SMALL CAPITALS | Used for program names and puzzle names. |
Typewriter | Used for file names, directories, URL's and code examples. |
[Typewriter] | Between square brackets. Denotes a keyboard command. |
→ | Followed by a number. A reference to another point in the text that provides more detailed information on the subject. To be read as 'see (also) ...'. |
BURRTOOLS is an Open Source software project. The most recent release of the program is always available for free download at the BURRTOOLS website:
At the bottom of that page you can select the proper download for your operating system. This will bring you to the download page where you have to select a mirror site to start the downloading. It's highly recommended to select the mirror site on the server nearest to your location.
MICROSOFT WINDOWS users can download either the Windows Binary (a zipped file which needs manual extraction and installation) or the self-extracting Windows Installer. Unless you have a slow connection to the internet, downloading the installer is probably the best option. To use BURRTOOLS on a UNIX platform you have to download the Source files and compile the program on your system (see installation guidelines below). An OSX package is provided.
If you downloaded the Widows Binary, just extract the file into the directory of your choice and the GUI is ready to be used. If you opted for the Windows Installer, start the executable and follow the instructions on your screen.
For detailed installation instructions please refer to the manual or help files of your operating system.
These installation instructions just contain some hints for the compilation of BURRTOOLS. As BURRTOOLS requires a few not so widespread libraries it is not the easiest task to do this.
To install BURRTOOLS for UNIX you first need to make sure you have the following libraries installed: zlib, libpng, libxml2 and libxslt. These libraries are usually installed on every LINUX system. You just have to make sure that you have installed the development packages, otherwise it is not possible to compile a program that uses these libraries, but just start programs that use them.
Additionally the following libraries are required: flkt and xmlwrapp.
Fltk is the library used for the GUI of BURRTOOLS. It may be included in your LINUX distribution or it may not.
The problem is that we need a version of this library that is not compiled with the default switches. This library must be compiled with C++ exceptions enabled. If you don't do this the program will simply shut down when an internal error occurs instead of displaying an error message and making an emergency save. To compile flkt with exceptions enabled you have to do the following:
The last library, xmlwrapp, can be hard to find, so here is a link
This library is compiled and installed in the usual Unix way, read their installation documentation.
Now BURRTOOLS can be compiled and installed the usual way with configure, make, make install.
After installing BURRTOOLS the following files should be on your system:
burrGui.exe | The graphical user interface (GUI) to create puzzle files for BURRTOOLS. |
UserGuide.pdf | This user guide. |
COPYING | A text file containing the GNU General Public Licence. This file may be deleted to save on disk space, but should always be included when sharing the program. Read it carefully before sharing or modifying the program. |
AUTHORS | A text file containing information about the contributors to the development of BurrTools. This file may be deleted to save on disk space. |
ChangeLog | An automatically created text file containing an overview of the changes made to the program since version 0.0.6. This file may be deleted to save on disk space. |
NEWS | A more readable version of ChangeLog. Here all (more or less important) changes to the different versions are collected in a comprehensive list. This is probably the place to look for what changed when downloading a new version. This file may be deleted to save on disk space. |
uninstall.exe | The uninstall program will only be added after installing BURRTOOLS with the Windows Installer. |
Also a new folder, examples, is created. This subdirectory contains a few examples of existing puzzles that illustrate the capabilities and functions of BURRTOOLS. A brief overview of the examples is presented in Appendix A.
Before we start describing the functions of BURRTOOLS, let's synchronise our use of vocabulary and explain a few concepts that are crucial to the way BURRTOOLS works.
As described above, BURRTOOLS works with shapes which are merely a collection of voxels that each can have either one of three different states: empty, fixed or variable. Particularly the difference between fixed and variable voxels has a great impact on the way the solver works and which assemblies are considered to be valid and which are not. Besides that, the validity of solutions can be further restricted by imposing colour constraints.
Colours allow you to add constraints to the possible placement of pieces. This is done by assigning a colour to one or more voxels of the piece(s) and the result shape (→AddingColour). Then you can set some colour placement conditions for each problem (→ColourConstraints). The program will place pieces only at positions that fulfil the colour conditions defined.
These colour conditions currently allow the definition of what coloured voxels of the pieces may go into what coloured voxels in the result shape. The default colour is special: it always makes a color match. Voxels in a piece that are in the default colour fit everywhere and default coloured voxels in the result shape can accommodate any piece voxel, independent of its custom colour.
Currently the assigned colour is interpreted as painting the whole voxel with this colour, but in the future more advanced possibilities for colouring and conditions may be added.
BURRTOOLS was initially very much based on PUZZLESOLVER3D by André van Kammen but, by now has diverged quite a bit from that. We strongly advise you to read this user guide since there are some features in BURRTOOLS that work somewhat differently to their counterparts in PUZZLESOLVER3D and there are also some functions that PuzzleSolver3D doesn't have. Below are the most prominent differences that need your attention:
BURRTOOLS has capabilities for importing PUZZLESOLVER3D files. So there's no need to redo your designs from scratch, although some postediting may be required because of the differences in handling duplicates of pieces and holes in the puzzle.
There are 2 possibilities for the holes. Depending on whether the option ``Fill outer Cubes'' is enabled or not when you solve the puzzle with PUZZLESOLVER3D, you must either make the inner cubes of the result shape or the whole shape variable if you want to get the same results with BURRTOOLS. This can be done with the tools described in section ConstrainingTools. With these tools you can make a shapes inner or outer cubes variable.
The duplicate pieces are handled automatically. BURRTOOLS adds all shapes to the new puzzle but does not add duplicates to the problem instead the counter for the original is increased. The unused shapes are marked as unused and can be deleted if they are not required.