Sat Jul 28 10:53:53 CEST 2007 Andreas Röver * fix some warnings concerning signed, unsigned ints and always true comparisons Fri Jul 27 18:19:16 CEST 2007 Andreas Röver * version 0.3.1 Fri Jul 27 18:19:08 CEST 2007 Andreas Röver * correct typo Fri Jul 27 17:51:44 CEST 2007 Andreas Röver * update 2 images Fri Jul 27 17:51:05 CEST 2007 Andreas Röver * only include the burrGui.exe Wed Jul 25 20:24:18 CEST 2007 Andreas Röver * update NEWS file Wed Jul 25 16:52:38 CEST 2007 Andreas Röver * empty sphere grid can not be transformed, or it is the same as input Tue Jul 24 21:36:23 CEST 2007 Andreas Röver * printf cleanup remove unneeded ones and replace the other with prints to stderr Tue Jul 24 20:37:49 CEST 2007 Andreas Röver * fix some valgrind warnings (uninitialized variables) Tue Jul 24 20:21:31 CEST 2007 Andreas Röver * make a copy of the data required for solution viewing this is necessary because when the solver is running it might delete the currently visible solution and then moving the animation slider will crash the program. Now we have a private copy and nothing will go wrong Tue Jul 24 20:21:04 CEST 2007 Andreas Röver * free the assembler thread, when closing the window Mon Jul 23 20:59:22 CEST 2007 Andreas Röver * another symmetry for triangles Mon Jul 23 18:05:01 CEST 2007 Andreas Röver * add documentation for 3d-interactivity Mon Jul 23 17:01:16 CEST 2007 Andreas Röver * replace neutral by default for the special color 0 Sun Jul 22 21:25:00 CEST 2007 Andreas Röver * 2nd part of Joe Beckers editing on the userguide Thu Jul 19 16:29:28 CEST 2007 Andreas Röver * fix for separate builddir Tue Jul 17 17:22:57 CEST 2007 Andreas Röver * do a part of the userguide creation in the makefile Mon Jul 16 17:18:38 CEST 2007 Andreas Röver * improved build system by Volker - includes nsis script - some fixes to makefile about missing files - a bit cleanup Mon Jul 16 17:06:46 CEST 2007 Andreas Röver * fix a small typo in the examples readme Mon Jul 16 17:05:38 CEST 2007 Andreas Röver * some little improvements to bootstrap script Sun Jul 15 14:10:12 CEST 2007 Andreas Röver * use a define for the undefined transformation in the transformation multiplication matrix Sun Jul 15 14:09:34 CEST 2007 Andreas Röver * add some compile flags (optimisation) to generator compilation Sun Jul 15 13:48:43 CEST 2007 Andreas Röver * better library checks Sun Jul 15 10:59:37 CEST 2007 Andreas Röver * the generators for the table are now an in between result, no need to compile generator, when tables are there Sun Jul 15 10:58:57 CEST 2007 Andreas Röver * change library checks so that the config program can be given on the command line Fri Jul 13 17:19:21 CEST 2007 Andreas Röver * use cases instead of if for mingw check in configure Wed Jul 11 19:20:27 CEST 2007 Andreas Röver * after scaling the hotspot is gone Mon Jul 9 18:22:20 CEST 2007 Andreas Röver * do piece hiding in solution view only when shift is pressed Wed Jul 4 20:46:17 CEST 2007 Andreas Röver * prevent division by zero error when grid is much bigger than the grid editor the function that calculates the position within the grid can now return false which means that no coordinates can be calculated Sun Jul 1 12:54:52 CEST 2007 Andreas Röver * part 1 of Joe Beckers editing suggestions for the documentation Sat Jun 30 09:12:10 CEST 2007 Andreas Röver * add a check for the scandir type and whether the largefile variables are necessary Thu Jun 28 16:39:56 CEST 2007 Andreas Röver * fix a memory leak and an other problem with mirror detection Mon Jun 25 20:26:16 CEST 2007 Andreas Röver * better heurisitc for guessing with which column to continue in assembler 1 this can result in quite some speedup (I've seen 3 times) but it still is just a heuristic and not mathematically founded. We do need something better in there Mon Jun 25 17:02:52 CEST 2007 Andreas Röver * add function to sort solution by used pieces, also optimize solver button matrix a bit Fri Jun 22 17:14:51 CEST 2007 Andreas Röver * fix range optimisation the sometimes the no range pieces already take up more voxels than there are fixed voxels, so the minimum range might be negative, this is not possible so raise that value to 0 Fri Jun 22 13:42:26 CEST 2007 Andreas Röver * better space utiliation in problem view, now measuring the size of the result independent from pieces Fri Jun 22 11:14:07 CEST 2007 Andreas Röver * optimize block list drawing to only draw visible blocks this speeds up drawing of lists with very many blocks that are mostly invisible Fri Jun 22 10:41:08 CEST 2007 Andreas Röver * change the new editor behavior now rotation is unchanged to the old sw - shift click adds a normal voxel - alt click adds a variable voxel - ctrl click removes a voxel the other views select or hide pieces by clicking at them Fri Jun 22 09:50:11 CEST 2007 Andreas Röver * solving and editing solution now also counts as changed and will result in asking to save when quitting Sun Jun 17 21:23:20 CEST 2007 Andreas Röver * openGL test only for non mingw32 systems Sun Jun 17 11:03:59 CEST 2007 Andreas Röver * fix hit searching, the last hit was not evaluated resulting in sometimes the wrong hit returned Sun Jun 17 08:59:29 CEST 2007 Andreas Röver * in problem 3d piece selection ignore shapes with number < 2 instead of asserting Sat Jun 16 22:06:24 CEST 2007 Andreas Röver * skip everything in the Select buffer that has not 3 name entries, necessary for the 3 axes Sat Jun 16 21:52:01 CEST 2007 Andreas Röver * add shape selection via 3d in problem tab and piece hiding via 3d in solution tab Sat Jun 16 21:32:46 CEST 2007 Andreas Röver * add left mouse click callback to 3d widgets and implement adding by clicking it is now possible to add voxels by clicking onto the faces of exising voxels normal left click adds normal voxel shift left click add variable voxel ctrl left click removes voxel below mouse Sat Jun 16 21:31:07 CEST 2007 Andreas Röver * add a function to voxel space to scale the space so that a given point can be included this point may be negative or everywhere else, the whole space is shifted so that the (now shifted too) point is within the available space Sat Jun 16 19:32:13 CEST 2007 Andreas Röver * implement face selection for triangles and spheres Sat Jun 16 19:30:13 CEST 2007 Andreas Röver * rotate only with 2nd mouse key Sat Jun 16 13:20:36 CEST 2007 Andreas Röver * implement shape picking in voxel drawer. it is now possible to find out what is below the mouse cursor Sat Jun 16 13:12:41 CEST 2007 Andreas Röver * add a function to get the x, y, z coodinates from the index into a voxel space Thu Jun 14 19:42:52 CEST 2007 Andreas Röver * add a check for openGL libraries and properly connect the strings for the pthreads Thu Jun 14 16:45:40 CEST 2007 Andreas Röver tagged 0.3.0 Tue Jun 12 16:44:33 CEST 2007 Andreas Röver * pthread c flags mut also be applied to linking Mon Jun 11 16:55:01 CEST 2007 Andreas Röver * don't search for posix threads on mingw, clarify error messages a bit in autoconf Sat Jun 9 10:55:26 CEST 2007 Andreas Röver * check for pthread and also exit configure with error, when libraries are missing Fri Jun 8 17:05:24 CEST 2007 Andreas Röver * fix the first, empty image that got drawn when making an assembly image sequence and mention image export improvements in NEWS Thu Jun 7 21:27:58 CEST 2007 Andreas Röver * fix comment from last comit Thu Jun 7 16:30:04 CEST 2007 Andreas Röver * make image export and display use the same perspective call Wed Jun 6 21:33:20 CEST 2007 Andreas Röver * Huge improvements to the image export layouting method - the final image size is better guessed by not adding a border when minimizing, but rather add a final image size dependend gap between the images - the layouter no longer works with a growing number of lines but with a decreasing hight of a row, this results in better utilisation of available space because a 1 pixel flater row might result in a fit, while the old method has to add a whole new row Wed Jun 6 21:31:00 CEST 2007 Andreas Röver * Use tiles when grabbing OpenGL images, this seems to be more stable (at least it works in my computer) Tue Jun 5 20:10:41 CEST 2007 Andreas Röver * use only the first solution, when enabling options in image export as other solutions can not be selected Tue Jun 5 20:10:12 CEST 2007 Andreas Röver * disable the image export menu entry, when there is nothing to export Sun Jun 3 21:12:14 CEST 2007 Andreas Röver * the image export now updates the available output options when a new problem is selected this is necessary because different problems have different solving state Sun Jun 3 18:23:53 CEST 2007 Andreas Röver * implement assembly and disassembly image sequences for image export Sat Jun 2 16:18:45 CEST 2007 Andreas Röver * when in debug mode the program prints texts explaining what is going on Sat Jun 2 16:18:17 CEST 2007 Andreas Röver * calculate the number of columns and rows removed by the matrix optimisation Sat Jun 2 16:11:23 CEST 2007 Andreas Röver * add a counting optimisation the idea behind this is that if we have piece ranges and fixed pieces to place we do know how many voxels can be contributed by range pieces. An example, 10 piece with 6 cubes plus one 4 cube piece shall make a 4x4x4 cube. We want to try all different 4 cube pieces possible. This is done by adding all 4 cube pieces with a 0-1 range. Without the optimisation the programm will add several of the 4 cube pieces because there still are more than 10 placements for the 6-unit pieces. Now we add an additional column that contains the number of missing cubes as condition (in the example 4) and a weight for each of the range pieces that is equal to the number of units that piece is made of (again 4 in this example). The result is that the program will not add more range pieces than are possible due to the number of units the result has. Fri Jun 1 17:58:40 CEST 2007 Andreas Röver * set version to 0.3.0 for next release Wed May 30 21:36:48 CEST 2007 Andreas Röver * load system colors, also add a small space at the right for the OSX window resizer Wed May 30 21:22:31 CEST 2007 Andreas Röver * update documentation with piece ranges and the interface changes Wed May 30 17:44:38 CEST 2007 Andreas Röver * in problem detail editor the maxHoles input is only available, when there are piece ranges Wed May 30 17:04:16 CEST 2007 Andreas Röver * copy constructor for problem didn't copy the new maxHoles member Wed May 30 17:01:13 CEST 2007 Andreas Röver * missed to initialize maxHoles in problem when creating a new one Wed May 30 17:00:36 CEST 2007 Andreas Röver * the problem detail editor is always available, even if no piece is in problem Wed May 30 17:00:10 CEST 2007 Andreas Röver * give the shape and problem selector a bigger minimum size Wed May 30 16:59:45 CEST 2007 Andreas Röver * the problem detail editor needs a redraw after edit, because min and max might change one another Wed May 30 16:59:12 CEST 2007 Andreas Röver * the last change to the 6-piece burr example saved only 100 solutions Tue May 29 17:12:05 CEST 2007 Andreas Röver * fix a gap in the color constrain editor visible on windows Mon May 28 17:46:31 CEST 2007 Andreas Röver * add functionality to define the maximum number of holes alowed this is only usable in puzzles with piece ranges as in all other puzzles the number of holes (not occupied variable voxels) is fixed and calculatable Mon May 28 15:14:54 CEST 2007 Andreas Röver * groups editor is now also using the layouter Mon May 28 13:00:55 CEST 2007 Andreas Röver * implement hole optimisation for assembler 1 this counts the number of holes alowed in an assembly and always checks if there are already more unfillable columns in the final assembly Mon May 28 12:59:25 CEST 2007 Andreas Röver * cleanup for debug interface and implement is for assembler 1 Sun May 27 21:22:58 CEST 2007 Andreas Röver * some more cleanup in assembler 0 Sun May 27 19:31:54 CEST 2007 Andreas Röver * remove some more stale code from assembler 0 Sat May 26 21:34:41 CEST 2007 Andreas Röver * reformat the reduction function a bit Sat May 26 21:33:58 CEST 2007 Andreas Röver * show the right number of pieces in the main window when optimizing Sat May 26 21:33:02 CEST 2007 Andreas Röver * fix a pile of warnings Sat May 26 19:45:26 CEST 2007 Andreas Röver * sigh, bubble sorts works a bit different from what I implemented... Sat May 26 17:59:09 CEST 2007 Andreas Röver * remove everything concering multi-pieces from assembler 0 Sat May 26 14:59:17 CEST 2007 Andreas Röver * optimize sort of assemblies a bit for piece ranges Sat May 26 14:58:34 CEST 2007 Andreas Röver * check at the start of the assembler, if we can actually solve the puzzle with this assembler Sat May 26 14:09:36 CEST 2007 Andreas Röver * remove debug code from assembler 1 Sat May 26 14:04:39 CEST 2007 Andreas Röver * implement saving and restoring of state for the new assembler 1 Sat May 26 11:01:51 CEST 2007 Andreas Röver * fall through in the big switch in assembler 1 iterative function wherever possible to prevent unneeded looping Sat May 26 11:01:27 CEST 2007 Andreas Röver * remove the disassembly instructions from solid 6-piece file Sat May 26 09:00:00 CEST 2007 Andreas Röver * update the setup and 100% finished calculation to properly work Wed May 23 21:15:15 CEST 2007 Andreas Röver * update the NEWS file a bit Wed May 23 21:00:14 CEST 2007 Andreas Röver * groups editor is now the problem detail editor Wed May 23 20:52:06 CEST 2007 Andreas Röver * fix "-1" piece button, we need to first decrement min counter and then the max Mon May 21 21:35:50 CEST 2007 Andreas Röver * optimize assembly generation this little optimisation results in quite some speedup. e.g. solid 6 piece butt file went down to halve the time, others are even more interesting... Mon May 21 21:20:06 CEST 2007 Andreas Röver * implement iterative search function for assembler 1, the search is not interruptible but not savable Sun May 20 17:59:11 CEST 2007 Andreas Röver * simplyfy assembler 1 a tiny bit Sun May 20 17:01:55 CEST 2007 Andreas Röver * the new assembler now properly reports the end of the calculations Sun May 20 17:01:05 CEST 2007 Andreas Röver * change the solide 6-piece burr example so that is it finished when loaded Sun May 20 16:47:58 CEST 2007 Andreas Röver * implement the fast row removal for the assembler 1 matrix now the new assembler should be fast enough to be really quicker for all multi piece puzzles... Sun May 20 16:30:36 CEST 2007 Andreas Röver * another twiddle with the time and solutions in the solver tab Sun May 20 11:18:01 CEST 2007 Andreas Röver * groupseditor now properly edits min and max piecenumber for all shapes Sun May 20 11:17:05 CEST 2007 Andreas Röver * fix problem in piece list on problem tab, sometime groups were not shown Sat May 19 19:52:13 CEST 2007 Andreas Röver * harmonize piece button labels, also correct the all+1 action, the min increase was missing Sat May 19 19:25:44 CEST 2007 Andreas Röver * shuffle elements in solver tab a bit around to make some more space Sat May 19 18:24:14 CEST 2007 Andreas Röver * add an option for the assembler to keep mirror solutions this will be useful later on, when having a proper solutions browser when all mirror solutions are removed it might be possible that the number of solutions for a certain piece set changes, when other pieces appear or disappear because there suddenly exists a mirror solution with the other pieces and the first solution is removed Fri May 18 18:24:55 CEST 2007 Andreas Röver * when unmirroring pieces we also have to take unplaced pieces into acount unplaced pieces then do become places, and the original mirrored piece unplaced this allows to find mirror solutions that are made out of other pieces from the set of available pieces Fri May 18 18:22:42 CEST 2007 Andreas Röver * reduce now returns the piece it is working on in assembler 1 Thu May 17 20:12:16 CEST 2007 Andreas Röver * theoretically is is possible to cover single rows multiple times, so don't assume next row here Thu May 17 20:11:32 CEST 2007 Andreas Röver * hide rows in assembler 1, once they are processed Thu May 17 15:54:33 CEST 2007 Andreas Röver * more cleanup, remove unneeded checks Thu May 17 15:30:02 CEST 2007 Andreas Röver * cleanup in assembler 1 factor out the row hiding into function now using only one vector for the hidden rows and not a stac variable. This will enable saving and loading further down. It also maked the recursive function smaller Thu May 17 15:13:50 CEST 2007 Andreas Röver * more cleanup in assembler 1 Thu May 17 14:38:57 CEST 2007 Andreas Röver * some more cleanup in assembler 1 Thu May 17 13:37:45 CEST 2007 Andreas Röver * remove a variable in assembler 1, preparations to remove recursiveness Mon May 14 21:29:57 CEST 2007 Andreas Röver * properly return the errorParam for errors instead of zero Mon May 14 21:28:43 CEST 2007 Andreas Röver * better coloring of multipieces. Now the colors are more similar for all colors Sun May 13 15:10:42 CEST 2007 Andreas Röver * add an example for the piece ranges Sun May 13 13:16:59 CEST 2007 Andreas Röver * make reduce do loops until no more lines can be removed in assembler_1 Sun May 13 13:15:04 CEST 2007 Andreas Röver * fix an infinite recursion problem in assembler_1 Sun May 13 13:11:04 CEST 2007 Andreas Röver * fix piece list for problem: ranges and groups were not properly displayed together Sat May 12 09:55:46 CEST 2007 Andreas Röver * deactivate the assembly sections, they are way too hard to keep them working Fri May 11 20:37:56 CEST 2007 Andreas Röver * free memory for assembly when counting assemblies only Tue May 8 11:35:51 CEST 2007 Andreas Röver * fix mirror piece detection. This should fix the mirror removal problem Tue May 8 11:26:38 CEST 2007 Andreas Röver * fix uninitialized pointer in PieceVisibility widget Tue May 8 11:25:54 CEST 2007 Andreas Röver * fix another problem with the mirror code (see comment added in the code) Mon May 7 20:02:46 CEST 2007 Andreas Röver * empty assemblies are now created a different way, so remove that code Mon May 7 17:50:38 CEST 2007 Andreas Röver * make saving of non placements a bit more economic a non placement is now saved as a single "x" in the list Mon May 7 17:50:07 CEST 2007 Andreas Röver * proper min max check for assembler 1, to generate proper error messages Mon May 7 17:49:32 CEST 2007 Andreas Röver * remove unused parameter in assembler_1 prepare Mon May 7 17:48:19 CEST 2007 Andreas Röver * add a button to reset minimum to zero, also some more updates to interface for min-max Mon May 7 17:44:23 CEST 2007 Andreas Röver * if a piece is not used in the solution the piece visibility list will not display its name this is intended to make it easier to see, wheter a piece is used in the acutally selected solution Sun May 6 21:37:28 CEST 2007 Andreas Röver * replace shape count by a range this will make it possible to search for solutions containing a piece or not. E.g. it is now possible to search the 6 piece burrs (for example all solid ones, ...) Editing is not yet properly supported in the GUI, right now it is just displayed Sun May 6 18:27:59 CEST 2007 Andreas Röver * make BurrTools handle unplaced pieces this has always been prepared but never used and so it never properly worked. A piece is placed if its transformation is not 0xFF. This is now properly wrapped and checked in all placed where necessary (at least I hope so). The patch also increases the possible number of pieces from 255 to MAXINT. This limit was caused by using an unsigned char as index into the placement... Sun Apr 22 15:46:00 CEST 2007 Andreas Röver * unite both recoursive functions as a first step to make is iterative Sun Apr 22 13:20:18 CEST 2007 Andreas Röver * add placement browser for assembler_1 Sun Apr 22 12:59:11 CEST 2007 Andreas Röver * make piece placement get functions virtual and available for all assemblers this new interface is obligatory, if the new assembler can not support is, it's ok Sun Apr 22 12:36:17 CEST 2007 Andreas Röver * wrong header included in assembler frontent 2 Sun Apr 22 12:24:40 CEST 2007 Andreas Röver * calculation of getFinished is now better and doesn't jump around any more Sat Apr 21 17:14:00 CEST 2007 Andreas Röver * add the new dancing link assembler this assembler is __WAY__ faster then the old one if it comes to multipieces it is a bis slower when only single pieces are involved. That is why the old one will live on. The old assembler will be simplified to only handle single pieces once the new assembler is working properly. So what works: it can assemble. Placement browser is not working, the reduction is not yet up to paar with the old assembler (the fast line removal is missing) The assembler is seleced in a factory function in the gridType_c class. In case it is neccessary to remove it just remove the selection of the new assembler in this class and make the canHandle function of the old assembler return always true Right now there are also quite some commented out debug prints left. They will vanish over time... Sat Apr 21 17:11:09 CEST 2007 Andreas Röver * remove some lines containing only spaces Sat Apr 21 08:46:58 CEST 2007 Andreas Röver tagged 0.2.3 Fri Apr 20 20:01:04 CEST 2007 Andreas Röver * prepare for version 0.2.3 Fri Apr 20 18:23:36 CEST 2007 Andreas Röver * update Pelikan and Bermuda Pelikan had a slight error in the design Bermuda still had both mirror solutions Fri Apr 20 18:11:00 CEST 2007 smiteo@yahoo.com * add provision to analyze all puzzles from command line Fri Apr 20 17:07:53 CEST 2007 Andreas Röver * remove x86_64 from assembler supported CPUs Fri Apr 20 16:53:22 CEST 2007 Andreas Röver * use asserts in the mirror code instead of if, they _have_ to be there Fri Apr 20 16:51:07 CEST 2007 Andreas Röver * fix another problem in mirror pieces this problem didn't occure because in all my puzzles the 2 mirror pairs are simply mirrored along the x axis resulting in t and t_inv equal to 24... Sun Apr 15 14:03:37 CEST 2007 Andreas Röver tagged 0.2.2 Sun Apr 15 14:01:25 CEST 2007 Andreas Röver * prepare release 0.2.2 Sun Apr 15 13:56:25 CEST 2007 Andreas Röver * properly implement stopping after preparation phase and reenable prepare button Sun Apr 15 13:43:29 CEST 2007 Andreas Röver * disassembler will not even start for one piece problems Sun Apr 15 13:42:57 CEST 2007 Andreas Röver * correct some printf to use the right format parameter for the given values Sat Apr 14 19:04:40 CEST 2007 smiteo@yahoo.com * fixing ebx clobber Sat Apr 14 18:52:31 CEST 2007 Andreas Röver * add TARGET_CPU_x86_64 as supported CPU (for the available assembly code) Sat Apr 14 09:33:03 CEST 2007 Andreas Röver * fix the preprocessor CPU detection stuff Fri Apr 13 17:13:19 CEST 2007 Andreas Röver * add some comments to the mirror piece swapping code Fri Apr 13 17:11:52 CEST 2007 Andreas Röver * proper check for target CPU in assembly portions (also remove no longer used FLU define) Thu Apr 12 17:39:19 CEST 2007 Andreas Röver * make the "Prepare" and "Step" buttons invisible, they are only used by me anway Thu Apr 12 17:30:41 CEST 2007 Andreas Röver * Fix the new last mirror fix (sigh) Thu Apr 5 21:40:51 CEST 2007 Andreas Röver * fix 2 problems in mirroring of assemblies - one problem was that non minimized pieces didn't work properly (they jumped around) - the other problem was that the wrong shape was calculated to do the hotspot and bounding box calculations with resulting in wrong new coordinates all this resulted in not properly working mirroring of assemblies and thus in not working mirror solution suppression (or only sometimes working) Sat Mar 31 14:25:06 CEST 2007 Andreas Röver * the prepare button is now active at the same time as the start button Thu Mar 22 18:09:48 CET 2007 Andreas Röver * when starting a new puzzle, clear out the name of the old one from the title Thu Mar 22 17:03:21 CET 2007 Andreas Röver tagged 0.2.1 Sun Mar 18 12:38:48 CET 2007 Andreas Röver * Add images of anaglyph mode Sun Mar 18 12:38:36 CET 2007 Andreas Röver * add cairo emulation to documentation Sun Mar 18 12:19:10 CET 2007 Andreas Röver * remove 2 unused images and update the others to look like the current GUI Sat Mar 17 18:32:56 CET 2007 Andreas Röver * update news set version to 0.2.1 Sat Mar 17 18:31:32 CET 2007 Andreas Röver * make mirror check initialisation handle identical pieces if there were 2 identical pieces in the problem (not multipieces but 2 identical ones) the initialisation of the mirror check structure went wrong. Now it works Sat Mar 17 13:11:07 CET 2007 Andreas Röver * we may need to check for mirrors even when all rotations can be excluded the assembler didn't check for mirrored solutions when it tas shure that all possible rotations can be exluded. But mirrors are independend of rotations. So separate these 2 from one another Sun Mar 11 17:33:01 CET 2007 Andreas Röver * properly set bounding box for empty shapes to all zero values this solves an assert, when problems contain empty shapes. THe bounding box was set too large and the compare in BB function tried to read the valued within that large BB and so tried to read invalid values Fri Mar 9 21:21:25 CET 2007 Andreas Röver * cleanup in documentation (remov empty environments, and double emphsasis) Fri Mar 9 21:20:55 CET 2007 Andreas Röver * update image for emulation 45 degree cut cubes Wed Mar 7 21:31:11 CET 2007 Andreas Röver * add default colour rules when adding colours or when adding problems Sun Mar 4 20:02:03 CET 2007 smiteo@yahoo.com * FLU changes for 64-bit compile errors Sun Mar 4 18:01:48 CET 2007 Andreas Röver * layouted windows are not put into the center of the screen Sun Mar 4 17:51:50 CET 2007 Andreas Röver * make status window progress modal and add caption, also explain about it in manual Sun Mar 4 16:16:06 CET 2007 Andreas Röver * update build system - include documentation and example when installing - exclude the headers when installing - bootstrap script gives parameters to configure call - docygen directory changed for better tab expansion Sun Mar 4 14:05:04 CET 2007 Andreas Röver * add tool tips for the 3 3-D modes Sun Mar 4 13:49:22 CET 2007 Andreas Röver * updated to main window (anaglyph mode) and status window Sun Mar 4 13:48:22 CET 2007 Andreas Röver * remove references to FLU from linux installation notes Sun Mar 4 13:23:13 CET 2007 Andreas Röver * add a progress window when creating the status window as the creation might take some time Sun Mar 4 13:21:16 CET 2007 Andreas Röver * a special begin method for the layouted window, to begin adding widgets to the window this is necessary because the layouted windows required you to add the widgets to the layouter inside the window, otherwise you will get problems. This of course only works when you have the right kind of pointer as the begin method is _NOT_ virtual Sat Mar 3 18:51:27 CET 2007 Andreas Röver * change to version 0.2.1pre Sat Mar 3 18:23:34 CET 2007 Andreas Röver * another 16 sphere symmetry groups Sat Mar 3 17:32:00 CET 2007 Andreas Röver * fix problem with sphere not having all possible concatenations of 2 transformations is is solved by taking the transformation apart into 2 transformations and applying them separated instead of using the matrix multiplication which might result in not allowed values Sat Mar 3 17:08:03 CET 2007 Andreas Röver * solve problem with transform point giving non integer results this is only possible with spheres and their crazy rotation problems... there is no possibility to assert that the assumption is right, so we must hope that it is Sat Mar 3 11:54:15 CET 2007 Andreas Röver * 4 new symmetry groups for spheres Sat Mar 3 11:22:51 CET 2007 Andreas Röver * make the gray in red-blue mode a bit lighter so that dark shapes are visible as well Fri Mar 2 18:25:58 CET 2007 Andreas Röver * add the part of FLU that burrgui uses to the source I did this because FLU is not really a widely used library and some big dirstros like debian or gentoo don't contain it. When this library is no longer required chances rise that BurrTools get included there, making installation for Unix users simpler, so let's cross fingers Fri Mar 2 17:39:19 CET 2007 Andreas Röver * missed one case where the Fltk include was wrong Fri Mar 2 16:51:46 CET 2007 Andreas Röver * proper comments for the grid editor classes Fri Mar 2 15:35:34 CET 2007 Andreas Röver * better centering for shapes in editor, problem and placement browser Thu Mar 1 17:21:42 CET 2007 Andreas Röver * as the result shape gets shifted by the hotspot, we also need to correct the piece position Mon Feb 26 20:31:50 CET 2007 Andreas Röver * status window needs to be modal, too (just like the other windows) Sun Feb 25 13:28:38 CET 2007 Andreas Röver * split of assembler frontends from assembler class the frontends are no longer derived from assembler but a class tree of their own. This way we can have more than one assembler and all use the samel frontend Sat Feb 24 16:49:58 CET 2007 Andreas Röver * View3dGroup is only used in its layoutable form, so remove the other case Sat Feb 24 16:39:44 CET 2007 Andreas Röver * make configuration use the layouter Sat Feb 24 09:50:29 CET 2007 Andreas Röver * placement browser now uses layouter Fri Feb 23 18:35:14 CET 2007 Andreas Röver * remove unneeded defines in the mainwindow that were left over from hand layouted times Fri Feb 23 18:27:35 CET 2007 Andreas Röver * some cleanup with the left over of window widgets header file Fri Feb 23 18:21:30 CET 2007 Andreas Röver * image export and stl export header weren't properly protected by header #ifs Fri Feb 23 18:20:20 CET 2007 Andreas Röver * move block list group into its file Fri Feb 23 18:07:36 CET 2007 Andreas Röver * move constraints group into its file Fri Feb 23 17:58:46 CET 2007 Andreas Röver * move button group into its file Fri Feb 23 17:50:21 CET 2007 Andreas Röver * move spearator into its file Fri Feb 23 17:39:13 CET 2007 Andreas Röver * move result viewer to its own file Thu Feb 22 19:27:55 CET 2007 Andreas Röver * move status line into its own file Thu Feb 22 19:18:19 CET 2007 Andreas Röver * remove includes that are no longer required in window widgets file Thu Feb 22 18:44:54 CET 2007 Andreas Röver * move view 3d group into its own file Thu Feb 22 18:20:26 CET 2007 Andreas Röver * move voxel edit group into its own file Thu Feb 22 18:07:34 CET 2007 Andreas Röver * move toggle button into its own file Thu Feb 22 17:54:33 CET 2007 Andreas Röver * move assertWindow class out of WindowWidget file Thu Feb 22 17:46:10 CET 2007 Andreas Röver * move progressbar over to the layouter as it is only a layouted standard fltk widget Thu Feb 22 17:35:26 CET 2007 Andreas Röver * split multiFileWindow class out of the WindowWidget class collection Thu Feb 22 17:16:21 CET 2007 Andreas Röver * correct text for AlPachino puzzle Wed Feb 21 20:53:07 CET 2007 Andreas Röver * 3 new cube and 45 new sphere symmetries, 2 triangle symmetries removed the 2 removed triangle symmetries are probably due to a software bug in the beginning, I can not find an example for those symmetry groups... Wed Feb 21 18:06:39 CET 2007 Andreas Röver * remove unlayouted ToggleButton Wed Feb 21 18:03:53 CET 2007 Andreas Röver * remove unlayouted BlockListGroup Wed Feb 21 17:53:59 CET 2007 Andreas Röver * remove unlayouted Constraints Group Wed Feb 21 17:43:01 CET 2007 Andreas Röver * remove no longer used Separator widget (the unlayoutable one) Wed Feb 21 17:34:50 CET 2007 Andreas Röver * remove all calls to set the box to THIN_BOX and rather setup the normal box as thin at startup This saves as a lot of calls to the box function and it is more flexible Sun Feb 18 14:23:53 CET 2007 Andreas Röver * correct 2 typos in comments Fri Feb 16 17:28:47 CET 2007 Andreas Röver * rename function "symmetryCalcuation" (yes the name had a typo) to "calculateSymmetry" Thu Feb 15 17:18:11 CET 2007 Andreas Röver * use proper count function for cost in stl export Thu Feb 15 16:40:49 CET 2007 smiteo@yahoo.com * change STL file naming rules this patch changes the way STL names are generated to both reflect the material cost function (# of cm^3) as well as any given shape label Thu Feb 15 16:39:44 CET 2007 smiteo@yahoo.com * change STL default parameters Wed Feb 14 16:55:14 CET 2007 Andreas Röver * add a 3d anaglyph mode (red green glasses) Tue Feb 13 16:37:18 CET 2007 Andreas Röver * replace texts in triangle nudge buttons with arrows Mon Feb 12 21:30:54 CET 2007 Andreas Röver * status window symmetry column now shows the symmetry index, when known or "---" when not Mon Feb 12 21:19:45 CET 2007 Andreas Röver * remove the debug symmetry checks this took up a lot of time for shperes, the check now is simpler and only tests for the actual shape. It used to check for all possible rotations whether the symmetrymask is known, that made 240*240 = 57600 transform calls each time the symmete calculation was called for the sphere it also saved quite some time for the other spaces, but only on startup puzzles that take long still take long Mon Feb 12 20:40:13 CET 2007 smiteo@yahoo.com * make default cubies display bigger (adjusting viewing frustum) Sat Feb 10 17:32:21 CET 2007 Andreas Röver * correct encoding for tool tabs file to properly show the degree sign Sat Feb 10 16:37:26 CET 2007 Andreas Röver tagged 0.2.0 Sat Feb 10 12:09:29 CET 2007 Andreas Röver * proper enabling and disabling of the buttons in the solver tab button array Sat Feb 10 00:56:48 CET 2007 smiteo@yahoo.com * fix GL clipping issue on BIG puzzles Sat Feb 10 09:09:03 CET 2007 Andreas Röver * update copyright information and add missing headers Fri Feb 9 22:01:09 CET 2007 Andreas Röver * release preparations for release 0.2.0 Fri Feb 9 16:50:01 CET 2007 Andreas Röver * add check to the add assembly button routines and also disable the buttons and checkbox when not applicable Thu Feb 8 18:00:17 CET 2007 Andreas Röver * another update to the 2 new puzzles Thu Feb 8 17:58:35 CET 2007 Andreas Röver * also use my own rounding in the spheres voxel space transformations this is probably not really necessary because the crosscompiler on my mashine doesn't have the problem with rounding, but better be careful Thu Feb 8 17:52:35 CET 2007 Andreas Röver * don't load puzzles with unknown grid type Thu Feb 8 17:52:15 CET 2007 Andreas Röver * the speres do have an assembler, show that text Thu Feb 8 17:51:44 CET 2007 Andreas Röver * sort buttons are disabled when there is nothing to sort, also add safety check Wed Feb 7 21:39:09 CET 2007 Andreas Röver * fix some warnings Wed Feb 7 18:19:27 CET 2007 Andreas Röver * colorize the label of the "identical" columns in the status window so that they stay readable Wed Feb 7 18:18:58 CET 2007 Andreas Röver * add a proper value of the scrollbar size in the layoutable scroller Wed Feb 7 18:04:19 CET 2007 Andreas Röver * the windows gcc seems to have a problem with rounding, so lets do it ourself Tue Feb 6 21:33:24 CET 2007 Andreas Röver * many new symmetry groups (3 for cubes, 8 for triangles 39 for spheres) Tue Feb 6 20:13:17 CET 2007 Andreas Röver * the table in status window is now inside a scroller to be able to see many shapes Tue Feb 6 19:15:35 CET 2007 Andreas Röver * add a layoutable scroll area Tue Feb 6 06:37:22 CET 2007 Andreas Röver * remove converter and tester these 2 programs are quite useless except for me Mon Feb 5 19:40:07 CET 2007 Andreas Röver * another symmetry group for spheres Mon Feb 5 19:38:38 CET 2007 Andreas Röver * replace big images with floats in documentation Mon Feb 5 18:01:43 CET 2007 Andreas Röver * mention unificator in todo list Mon Feb 5 17:16:31 CET 2007 Andreas Röver * remove an assert in triangle transform function that was left from spheres Mon Feb 5 04:22:30 CET 2007 smiteo@yahoo.com * add cost function for volume of shape in stl export Mon Feb 5 04:21:42 CET 2007 smiteo@yahoo.com * add more checks for STL parameters Sun Feb 4 17:48:53 CET 2007 Andreas Röver * scaling down it not yet implemented in triangle space Sun Feb 4 17:35:38 CET 2007 Andreas Röver * instead of updating buttons manually use updateInterface Sun Feb 4 17:32:20 CET 2007 Andreas Röver * missed to update continue button in 2 places leaving it in a wrong state Sun Feb 4 17:30:38 CET 2007 Andreas Röver * when copying a problem one member of class was not initialized Sun Feb 4 16:51:40 CET 2007 Andreas Röver * more documentation updates, updated images for new interface, ... Sun Feb 4 15:35:52 CET 2007 Andreas Röver * forgot to update makefile when exchanging pagoda jpeg to png Sun Feb 4 15:30:23 CET 2007 Andreas Röver * don't make the existing space smaller than it is, center the transformed shape Sun Feb 4 15:29:58 CET 2007 Andreas Röver * don't try to transform when the space is empty in voxel_1 Sun Feb 4 15:03:59 CET 2007 Andreas Röver * triangle voxel space now also uses rotation matrix for transformation rotation functions are removed Sun Feb 4 12:23:26 CET 2007 Andreas Röver * remove some unneeded variables, mention Derek in AUTHORS for stl support Sat Feb 3 22:05:11 CET 2007 Andreas Röver * doc: aftermath of nobreak inclusion Sat Feb 3 22:04:38 CET 2007 Andreas Röver * some spaces must stay or texmacs will get confused Sat Feb 3 22:01:52 CET 2007 Andreas Röver * document the new "Sym" column in status window Sat Feb 3 21:56:00 CET 2007 Andreas Röver * make sure all occurences of "3-D" are unbreakable Sat Feb 3 21:55:24 CET 2007 Andreas Röver * doc: correct font for a gui element -> must be sans serif Sat Feb 3 21:52:43 CET 2007 Andreas Röver * replace Pagoda jpeg with color reduced png file Sat Feb 3 21:51:16 CET 2007 Andreas Röver * documentation changes for image export Sat Feb 3 20:59:12 CET 2007 Andreas Röver * add checks for gridtype and variable voxels to the STL export Sat Feb 3 20:46:17 CET 2007 Andreas Röver * some improvements to STL export -remove whitespace at the end of lines -make static variables static -make filename string in export function as long as the snprintf calls expect it to be -inform the user with message boxes about reasons, why the export failed -remove unneeded headers and the not required multiple inherited class -clean up the dialog widget positions and give them some meaningful minimum sizes for the expected content -the piece selector takes up the rest of the available space vertically Sat Feb 3 20:44:05 CET 2007 Andreas Röver * add a stretch function to layouter which maked the widgets stretch into the available space Sat Feb 3 18:32:11 CET 2007 smiteo@yahoo.com * stl-export Sat Feb 3 18:30:33 CET 2007 smiteo@yahoo.com * stl-export Sat Feb 3 17:53:57 CET 2007 Andreas Röver * 17 new symmetry groups for triangle space Sat Feb 3 16:56:37 CET 2007 Andreas Röver * introduce initHotspot function this function initializes the hotspot in a proper place sauitable for the gridspace so that the position of the hotspot stays valid through all possible orientations this is necessary for spheres as there it might happen that is turns out to be in a place that is not valid if the hotspot is always at 0;0;0, so with spheres we put the hotspot at a non empty voxel close to 0;0;0 all other spaces currently always use 0;0;0 Thu Feb 1 21:21:35 CET 2007 Andreas Röver * add a column to the status window that shows whether the symmetries of all pieces are known Thu Feb 1 21:09:29 CET 2007 Andreas Röver * 8 more symmetry groups for sphere space Thu Feb 1 17:59:27 CET 2007 Andreas Röver * add BallRoom and update other examples add comments everywhere, minimize where not done, add proper weight and resolve Thu Feb 1 17:57:17 CET 2007 Andreas Röver * aftermath of the typo corrections, this is just reindenting of paragraphs Thu Feb 1 17:56:20 CET 2007 Andreas Röver * simplify triangular minimisation and proper implementation for sphere minimisation Thu Feb 1 17:17:37 CET 2007 Andreas Röver * the real headers have a capital letter H Thu Feb 1 16:58:06 CET 2007 Andreas Röver * loots and loots of typo corrections for documentation Wed Jan 31 21:40:05 CET 2007 Andreas Röver * documentation updates Wed Jan 31 17:26:34 CET 2007 Andreas Röver * stop window going back to minimal size who is called when a windows is clicked and no widged in sight, show used to sed the window size, not it only does, when window invisible at that moment Wed Jan 31 16:49:21 CET 2007 Andreas Röver * fix comment editing box problem with a too high label Tue Jan 30 20:29:00 CET 2007 Andreas Röver * proper centering and move to origin for triangles and spheres Mon Jan 29 21:49:02 CET 2007 Andreas Röver * fix color mark drawing in sphere grid editor Mon Jan 29 19:19:18 CET 2007 Andreas Röver * mention Markus in AUTHORS for his hints with the spheres Sun Jan 28 21:49:27 CET 2007 Andreas Röver * rotation matrices are static for module... Sun Jan 28 21:48:18 CET 2007 Andreas Röver * use rotation matrixes for triangle space generator and point transformation, more will follow Sun Jan 28 21:44:15 CET 2007 Andreas Röver * don't rotate a shape for bounding box calculation if not necessary this saves us cycles as this function is quite often called with 0 as transformation and the transformation sometimes changes things (e.g. in sphere space where after a transformation the space can get smaller...) This resulted in skips in rotated assemblies -> not proper rotated assembly reduction Sun Jan 28 21:42:46 CET 2007 Andreas Röver * fix another skipping transformed assembly problem with triangle space the problem was that the (0,0,0) vector can not be rotated onto itself because of parity changes in the target triangle, so we have to consider this small shifts Sun Jan 28 14:06:46 CET 2007 Andreas Röver * also include mirror matrices in sphere space this allows us to remove the mirrorX function Sun Jan 28 13:41:08 CET 2007 Andreas Röver * use rotation matrices in space grid 0 as well they are more flexible, the do now include the mirroring, so all transformations can be done in one step, which is way cheaper than the up to 4 copyings required to generate a transformation before (mirrorX, rot along all 3 axes...) It also removes quite a bit of code as the rotation functions have been quite big. Triangles will be switched over next Sat Jan 27 20:57:34 CET 2007 Andreas Röver * virtualize scale functions and fix scaling for triangles Sat Jan 27 20:00:56 CET 2007 Andreas Röver * fix centering of objects in sphere space Sat Jan 27 18:10:13 CET 2007 Andreas Röver * use the axis colors for the size selector labels Sat Jan 27 18:03:16 CET 2007 Andreas Röver * remove the grid space names from the tool tabs Sat Jan 27 17:41:09 CET 2007 Andreas Röver * invalidate symmetry after rotating aroung z in triangle space Sat Jan 27 17:39:42 CET 2007 Andreas Röver * remove all unneeded rotate and mirror functions, the ones left are private now Sat Jan 27 17:19:51 CET 2007 Andreas Röver * now all grid spaces use no rotate and mirror functions any more in the gui Sat Jan 27 16:59:22 CET 2007 Andreas Röver * proper rotations and flips for triangle space, also only using transform Sat Jan 27 16:39:09 CET 2007 Andreas Röver * proper rotations and flips for sphere grid using only transform we will do that same for all grid spaces: only use transform, when we can remove the rotate and mirror functions from voxel space where they don't really belong as not all spaces can be rotated one way or another Sat Jan 27 16:19:21 CET 2007 Andreas Röver * proper nudging for the new space grids Sat Jan 27 16:18:35 CET 2007 Andreas Röver * it makes no sense to "scale" sphere grid space, so remove those buttons Sat Jan 27 14:42:07 CET 2007 Andreas Röver * voxel actionOnSpace function now uses the getNeighbor function to find neighbors this used to be fixed coded and only worked for brick space, now also speres are working properly and it is possible to make inside spheres variable... Sat Jan 27 13:47:31 CET 2007 Andreas Röver * initialize symmetries after loading voxel space Sat Jan 27 13:47:12 CET 2007 Andreas Röver * missed one include file Sat Jan 27 13:27:55 CET 2007 Andreas Röver * gzstream include must be local Sat Jan 27 13:26:17 CET 2007 Andreas Röver * overhaul of build system, now the generated files in tabs_x are created automatically Sat Jan 27 10:35:37 CET 2007 Andreas Röver * add some symmetry search functions for spheres Fri Jan 26 22:08:47 CET 2007 Andreas Röver * make the triangle space generator independent from libburr, now we can include them in the makefile Fri Jan 26 21:56:43 CET 2007 Andreas Röver * make generator for brick space independent from burrlib Fri Jan 26 21:30:39 CET 2007 Andreas Röver * make generator for space grid 2 independent of library Fri Jan 26 21:29:25 CET 2007 Andreas Röver * bitfield uses asserts Mon Jan 22 19:09:10 CET 2007 Andreas Röver * Add Bill Cutlers Bermuda puzzle Sun Jan 21 16:55:37 CET 2007 Andreas Röver * factor out size buttons of tool tabs Sun Jan 21 16:34:46 CET 2007 Andreas Röver * factor out the code to resize a space in the tool tab Sun Jan 21 16:26:42 CET 2007 Andreas Röver * factor out the tool button tab Sun Jan 21 16:09:05 CET 2007 Andreas Röver * move 2 wigets only used by tool tab to tool tab file Sun Jan 21 15:47:03 CET 2007 Andreas Röver * the tabs with the edit tools can now be different for all grid spaces right now they are 3 cpies of one and the same class, except for the small text difference to see, which grid space is active. Later on we will implement different tools for all the grid spaces or have different activities for different spaces (e.g. nudge only by 2 units, ...) Sun Jan 21 13:25:44 CET 2007 Andreas Röver * huge speedup for layouter first when a layouter widget was resized it used to call the Fl_Group resize function, which first placed all widgets resulting in recursive layouter call for all those placements and then the layouter placed the widgets again resulting in another recursive cascade. That is removed now by only calling the Fl_Widget resize second the minimum size of a layouter stays constant normally, so cache that value for later calls to the function. Sun Jan 21 09:35:54 CET 2007 Andreas Röver * fix bug when calculating minimal tab size the width and height were not properly initialized resulting in huge sizes from time to time, now a minimal size of 10 is assumed Sat Jan 20 17:34:25 CET 2007 Andreas Röver * simplify hotspot calculation in sphere space as the hotspot calculation might be done after the loops anyway we don't need to have that check inside the loop Sat Jan 20 15:20:53 CET 2007 Andreas Röver * fix assembly rotation for sphere space grid 2 things were wrong: - if the hotspot was on an empty voxel is was not updated when rotation - the transformation multiplication matrix was calculated wrongly, the mirror matrix was applied wrong Fri Jan 19 21:51:23 CET 2007 Andreas Röver * copy and paste, bitfield print function doesn't need to maintain the index Fri Jan 19 17:39:27 CET 2007 Andreas Röver * convert bitfield to use proper linebreaks (UNIX) and start using standard int types with lengths Wed Jan 17 21:34:04 CET 2007 Andreas Röver * fix bug in loader for assemblies that made negative number below -9 load wrong Sun Jan 14 21:30:04 CET 2007 Andreas Röver * make the puzzleSolver3D importer check for duplicates and explain the documentation about importing Sun Jan 14 19:23:08 CET 2007 Andreas Röver * add another missing file (bitfield) Sun Jan 14 19:11:30 CET 2007 Andreas Röver * add the assembler frontend for the sphere grid space Sun Jan 14 17:38:40 CET 2007 Andreas Röver * proper deinitialisation of PieceVisibility viewer, valgrind complained Sun Jan 14 17:35:01 CET 2007 Andreas Röver * simplyfy toggle 3D and grid editor function a bit, the layouter makes it possible Sun Jan 14 17:30:12 CET 2007 Andreas Röver * fix layouting problem after toggling the 3D and the grid editor Fri Jan 12 22:21:01 CET 2007 Andreas Röver * validate coordinates before editing them in grid editor this is necessary for sphere as they do have voxels that do not belong to the space but thay would be edited by the grid editor and would break havoc that way so a new virtual validate function is created with default implementation always valid and a specialisation for spheres. at the same time the recoursive set function is made a part of the class to have better access to class memebrs and now requires less parameters Fri Jan 12 21:58:02 CET 2007 Andreas Röver * another 11 sphere symmetry groups Fri Jan 12 21:23:14 CET 2007 Andreas Röver * search for all sphere symmetry groups of 3x3x3 spaces and add them Thu Jan 11 21:15:30 CET 2007 Andreas Röver * fix spheres generator, the matrix multiplication was not stored correctly Thu Jan 11 20:49:56 CET 2007 Andreas Röver * handle mirrors in sphere transformPoint Thu Jan 11 20:49:20 CET 2007 Andreas Röver * 3 more symmetry groups for spheres Thu Jan 11 18:16:56 CET 2007 Andreas Röver * fix transformPoint for triangles, this has been wrong a loooong time Tue Jan 9 19:17:00 CET 2007 Andreas Röver * proper implementation for symmetry calculation tree in generator for space 2 Tue Jan 9 19:01:00 CET 2007 Andreas Röver * some more symmetry groups for spheres Tue Jan 9 18:03:17 CET 2007 Andreas Röver * update generator for grid space 2 (spheres) now transformed assemblies are suppressed Tue Jan 9 14:43:10 CET 2007 Andreas Röver * add symmetries and assembler frontend for spheres Tue Jan 9 14:42:20 CET 2007 Andreas Röver * proper hotpot update for transformation and correction to transform point in voxel_2 Tue Jan 9 14:40:50 CET 2007 Andreas Röver * nobody uses the symmetry mask directly, so remove that function and properly virtualize the only user Tue Jan 9 14:39:30 CET 2007 Andreas Röver * proper positioning of spheres in the voxel drawer Tue Jan 9 14:38:47 CET 2007 Andreas Röver * due to the large symmetry vectors of spheres, we need a lerget buffer here Sun Jan 7 11:47:02 CET 2007 Andreas Röver * proper neighbors for spheres Sun Jan 7 11:46:17 CET 2007 Andreas Röver * add some pointers to one message, this message confuses people, so tell them where to read Sun Jan 7 11:44:29 CET 2007 Andreas Röver * implement transformation for spheres, also toggle logic, (0;0;0) is a valid coordinate Sat Jan 6 17:15:33 CET 2007 Andreas Röver * add the missing files for the new space grid to darcs repository Fri Jan 5 21:16:50 CET 2007 Andreas Röver * virtualize transform the transform function is really the work horse when it comes to generating alls possible orientations. It it the only function used for that by the libraray. the rotxyz functions are only used by the gui. So make transform virtual so that each class can have its own implementations as spheres nees another aproach and can not work with the current scheme of adding up several rotxyz calls. This also removes the rotxyz members from sym, as nobody needs them the rot arrays are now part of the voxel_x_c classes later on rotxyz will be removed from the voxel_c class as they are really dependend on the grid space if they do make a sense at all Fri Jan 5 20:42:29 CET 2007 Andreas Röver * transformations can fail in sphere grid space, so we can not use it in constructor this patch removes the transform parameter from the voxel space constructors and places the transform call after that and either adds asserts or checks to in the right places to check for the result of the transformation Thu Jan 4 21:21:34 CET 2007 Andreas Röver * remove parameters for the cube space they were no good aproach I need to think about this again but this is no good because the user - can not exactly define the shape to use and opten the resulting shape looked wrong - too complicated logic for the programming Thu Jan 4 21:06:39 CET 2007 Andreas Röver * add voxel_2 class, right now it is just a copy of voxel_0 plus the rotation matrixes Thu Jan 4 21:06:14 CET 2007 Andreas Röver * NEWS, clarify disassembler Wed Jan 3 20:39:57 CET 2007 Andreas Röver * add spheres as a new possible space grid currently the grid editor and the voxeldrawer do work ok but still need improvement the variable voxel markers are missing no dedicated voxel space -> no proper transformations, no symmetry checks, .... Wed Jan 3 20:39:35 CET 2007 Andreas Röver * typo in makefile generator in a filename Tue Jan 2 18:24:21 CET 2007 Andreas Röver * add buttons to add one instance of all shapes and another one to remove all shapes Tue Jan 2 18:23:20 CET 2007 Andreas Röver * better toggling of 3D area and grid editor it is still not perfect with the new layouter, but working at least again most of the time Tue Jan 2 18:21:25 CET 2007 Andreas Röver * proper minimum size for grid edit group Sun Dec 31 19:07:01 CET 2006 Andreas Röver * make the rest of mainwindow use the layouter so now it is completely layouted Sat Dec 23 21:11:17 CET 2006 Andreas Röver * update NEWS file with a few more things Sat Dec 23 21:09:04 CET 2006 Andreas Röver * update stale comment Fri Dec 22 14:45:01 CET 2006 Andreas Röver * enable and disable the new buttons on the solver tab when the puzzle is currently solved Fri Dec 22 10:11:40 CET 2006 Andreas Röver * add a coment for the hash node reference count Thu Dec 21 11:23:05 CET 2006 Andreas Röver * move the reference count increasing for the disassembly nodes to the proper place Thu Dec 21 11:17:41 CET 2006 Andreas Röver * simplyfy disassembler find state loop a bit Wed Dec 20 19:59:30 CET 2006 Andreas Röver * get rid of the deletelist in disassembler, use the reference counter of the nodes instead Wed Dec 20 19:36:43 CET 2006 Andreas Röver * newNode always returns a valid value, so no need to check that Wed Dec 20 19:36:12 CET 2006 Andreas Röver * some comments Wed Dec 20 19:33:51 CET 2006 Andreas Röver * use a hashtable in the disassembler for node merging this used to be a list but the list can get up to 60 entries large and then checking all entries if they are equal to a new node can be expensive Wed Dec 20 19:33:29 CET 2006 Andreas Röver * some const correctnes Wed Dec 20 19:32:50 CET 2006 Andreas Röver * cache the hashvalue for disassembler nodes Sat Dec 16 18:15:07 CET 2006 Andreas Röver * add some coments to the checkmovement function in disassembler Sat Dec 16 18:06:09 CET 2006 Andreas Röver * add missing include Sat Dec 16 17:58:40 CET 2006 Andreas Röver * save direction and amount of movement with the disassembler nodes with this information the node merging can be done much faster because we don't need to find this information, also the newnode function was simplified because of some interface changes Sat Dec 16 16:40:10 CET 2006 Andreas Röver * improve prepare2 function of disassembler not we only do another loop if it is really necessary, the check costs extra time but is doen't raise the level of the function. The function is still O(n^3) but we can save one of the n^3 loops Thu Dec 7 18:10:54 CET 2006 Andreas Röver * more tweaks to node hashtable in disassembler - nodes are now a real hashnode instead of stored in a struct that is a hashnode. This saves us loooots of new and delete calls - hashtable starts smaller and grows faster Wed Dec 6 21:11:57 CET 2006 Andreas Röver * optimisation for node finding when finding nodes don't save doubles. This should help improve performance because merging needs to be done with less nodes Wed Dec 6 21:07:07 CET 2006 Andreas Röver * optimisations for newNodeMerge bail out as fast as possible, if we can not return a valid node so if the movement of pieces differ -> return Wed Dec 6 21:05:40 CET 2006 Andreas Röver * optimisations for the check movement function one check is moved up so that the inner part can be avoided earlier Wed Dec 6 21:04:23 CET 2006 Andreas Röver * improvements to node hash - the node hash can not grow - some optimisations for fatser initialisation and deletion - start with smaller hash table for less memory consumption Wed Dec 6 21:02:27 CET 2006 Andreas Röver * change hash function for node hash so that is if faster to calculate Tue Dec 5 18:25:51 CET 2006 Andreas Röver * Checkmovement returns now only equal movement Checkmovement used to return different amounts of movement for different pieces that disturbed quite some other parts, now all pieces are wither stationary or move by the amount given to that function That also makes the check for even movement in the new node function unnecessary and so it could be moved over to the mergenode function Tue Dec 5 18:24:50 CET 2006 Andreas Röver * burrTxt can now only redisassemble the already found assemblies in a file Sun Nov 26 14:45:45 CET 2006 Andreas Röver * disassembler uses the max weight instead of the sum of the weights Sun Nov 26 14:31:45 CET 2006 Andreas Röver * Fix crash on toggling piece visibility when no solution is displayed When you toggled a visibility and for example the problem display ways visible in the 3D window the program could crash because it tried to check the visibility for more 3D shapes than there were blocks in the selector Mon Nov 6 21:07:43 CET 2006 Andreas Röver * use proper font for gui elements in documentation Mon Nov 6 21:06:23 CET 2006 Andreas Röver * new images for documentation with new gui elements Sat Nov 4 18:29:02 CET 2006 Andreas Röver * some small additions and fixes to documentation Tue Oct 31 19:00:20 CET 2006 Andreas Röver * add status window to documentation Tue Oct 31 18:58:59 CET 2006 Andreas Röver * mention different grid spaces in differences to PuzzleSolver3D Tue Oct 31 13:15:08 CET 2006 Andreas Röver * update documentation with space grid, weight and the new buttons on sovler tab Tue Oct 31 13:13:57 CET 2006 Andreas Röver * doxygen commenting Fri Oct 27 20:07:10 CEST 2006 Andreas Röver * remove the window frame from the images inside the documentation Thu Oct 5 18:55:01 CEST 2006 Andreas Röver * add a doxygen configuration file Sun Sep 24 15:11:25 CEST 2006 Andreas Röver * increase readability of code in the disassembler a bit Sun Sep 24 15:09:58 CEST 2006 Andreas Röver * use a hashtable in the disassembler to store closed nodes this should hopefully increase speed as the looup operation of a hashtable is way faster than the one in a binary tree as was used for the old set Sun Sep 24 15:00:17 CEST 2006 Andreas Röver * add a section with hints and tips for emulation other space grids. Right now only headers Sun Sep 24 14:59:41 CEST 2006 Andreas Röver * add Ronald as author to the documentation Sun Sep 24 14:51:04 CEST 2006 Andreas Röver * properly reset groups after searching, this silences a warning Sun Sep 24 14:49:39 CEST 2006 Andreas Röver * proper padding for button groups to make them look like in the old version before going to layouter Sun Sep 24 14:48:46 CEST 2006 Andreas Röver * fix unused variable varning inside thr tr module Sun Sep 24 14:47:29 CEST 2006 Andreas Röver * add possibility for buttons to specify padding between label and button frame Sun Sep 24 14:46:03 CEST 2006 Andreas Röver * add virtual destructors for all classes that miss them Sun Sep 24 11:58:49 CEST 2006 Andreas Röver * gcc doesn't accept class::member inside the class declaration make compilabe with gcc 4.1.1 Tue Jun 20 18:38:53 CEST 2006 Andreas Röver * small optimisation in disassembler_0 Tue Jun 20 18:25:58 CEST 2006 Andreas Röver * assert to make shure we don't free more than once Tue Jun 20 18:22:37 CEST 2006 Andreas Röver * new disassm to moves option for better image generation now the active part, where things are moving is always in the center and not like in the old one where, when the removed part required further shifting, the action took place somewhere else Tue Jun 20 18:20:38 CEST 2006 Andreas Röver * proper local lables for the i86-asm part of the dancing link assembler, now it works again Sun Jun 18 11:58:46 CEST 2006 Andreas Röver * better disassembly breadth first search this search does keep only the nodes that are really required and drops nodes that are useless. This speeds up the process as less nodes need to be searched when a new node is included in the list it also saves memory as less nodes need to be saved The patch also fixes a problem with the old node merging algorithm which was wrong because of the weights and which also merges wrong nodes together Fri Jun 16 16:23:26 CEST 2006 Andreas Röver * fix crash for constrains buttons Fri Jun 16 16:08:06 CEST 2006 Andreas Röver * the custom progress bar is no longer needed (since fltk 1.1.7) so remove it Fri Jun 16 14:07:17 CEST 2006 Andreas Röver * 2nd batch of typos in comments and prints, this should be nearly all Thu Jun 15 18:18:39 CEST 2006 Andreas Röver * first set of typo corrections on comments and program output Thu May 18 21:48:46 CEST 2006 Andreas Röver * use local labels in assembler code Sat May 6 15:40:43 CEST 2006 Andreas Röver * doc: typos and improvements to unix installation section Sat May 6 09:58:48 CEST 2006 Andreas Röver * wrong filename for ImageExport Window image Fri May 5 22:21:56 CEST 2006 Andreas Röver * convert the last section in the entities tab to layouter all that we need now is to write our own tile class that doesn't allow the dragging of widgets below their minimal size Fri May 5 22:21:33 CEST 2006 Andreas Röver * masure proper label size for buttons Fri May 5 22:21:15 CEST 2006 Andreas Röver * fix for calculation of layoutabe tab size Fri May 5 19:24:04 CEST 2006 Andreas Röver * doc: remove the table of contents its rebuild when creating the pdf Fri May 5 17:13:34 CEST 2006 Andreas Röver * doc: fix section breat typo Fri May 5 17:12:40 CEST 2006 Andreas Röver * add section for exporting images Fri May 5 16:50:02 CEST 2006 Andreas Röver * add Ronald and Derek as a Thank you to the preface Fri May 5 16:49:40 CEST 2006 Andreas Röver * doc: move caption lables behind the caption, otherwise TeXMacs gets confused Fri May 5 16:49:04 CEST 2006 Andreas Röver * add the new documentation to the distribution Thu May 4 21:46:40 CEST 2006 Andreas Röver * doc: add some unix installation instructions Thu May 4 18:20:35 CEST 2006 Andreas Röver * doc: another toc update Thu May 4 17:16:28 CEST 2006 Andreas Röver * doc: remove the reference and auxiliary data at the end of the file, they can be recomputed Thu May 4 16:42:37 CEST 2006 Andreas Röver * doc: remove some items from future plans list Thu May 4 16:41:59 CEST 2006 Andreas Röver * doc: mention that is might be impossible to continue after upgrading Thu May 4 16:41:23 CEST 2006 Andreas Röver * doc: additional reason for not saving disassemblies Thu May 4 16:39:25 CEST 2006 Andreas Röver * doc: some more typos Thu May 4 16:38:30 CEST 2006 Andreas Röver * doc: note that it _is_ possible Thu May 4 16:36:08 CEST 2006 Andreas Röver * remove the name of the computer magazin Wed May 3 21:55:12 CEST 2006 Andreas Röver * first save in texmacs 1.0.6, update table of contents Wed May 3 21:36:16 CEST 2006 Andreas Röver * Ronalds new documentation this is more or less his' file, except that I removed the absolute paths of the images included in the tm file Thu May 4 19:35:48 CEST 2006 Andreas Röver * convert the tabs on the entity tab Thu May 4 18:40:00 CEST 2006 Andreas Röver * button size must use measure_label to determine the size of the button label Tue May 2 16:31:06 CEST 2006 Andreas Röver * convert solver section of solver tab Mon May 1 21:16:54 CEST 2006 Andreas Röver * solution section on solver tab Mon May 1 17:31:01 CEST 2006 Andreas Röver * constraint section of problem tab, problem tabl is now finished Mon May 1 17:19:31 CEST 2006 Andreas Röver * colors section of problem tab Mon May 1 17:15:22 CEST 2006 Andreas Röver * pieces section of problem tab Mon May 1 17:01:36 CEST 2006 Andreas Röver * shapes section of problem tab Mon May 1 16:51:04 CEST 2006 Andreas Röver * problem tab, problem section Mon May 1 16:50:50 CEST 2006 Andreas Röver * convert entity tab colors section Mon May 1 12:38:12 CEST 2006 Andreas Röver * replace hand placed widgets in the entities tab shape section with layouter this is just a first step. All other sections will follow, followed by a replacement of the tile group to make shure you can not drag widgets smaller than their minimum size. This will not be possible with the standard tile widget Mon May 1 11:01:57 CEST 2006 Andreas Röver * remove unused constructors from flat button class Mon May 1 10:44:17 CEST 2006 Andreas Röver * cleanup of file and class names in groups editor Mon May 1 10:36:54 CEST 2006 Andreas Röver * rename the class of the groups editor table Mon May 1 10:34:52 CEST 2006 Andreas Röver * move the table class of the groups editor into the c file Mon May 1 09:59:06 CEST 2006 Andreas Röver * cleanup for mainwindow file name and class name Mon May 1 09:50:31 CEST 2006 Andreas Röver * move includes in MainWindow from header to cpp file, this saves compile time for main Mon May 1 09:33:44 CEST 2006 Andreas Röver * clean up image export file and class name Mon May 1 09:05:28 CEST 2006 Andreas Röver * this include is no longer required Mon May 1 08:50:10 CEST 2006 Andreas Röver * rename configuration class to configuration_c Mon May 1 08:45:36 CEST 2006 Andreas Röver * remove openGL include from arcBall header Sun Apr 30 22:03:53 CEST 2006 Andreas Röver * and now the placement browser Sun Apr 30 21:41:58 CEST 2006 Andreas Röver * sort files in makefile alphabetically, well more or less Sun Apr 30 21:32:40 CEST 2006 Andreas Röver * image file and class names cleanup Sun Apr 30 21:24:18 CEST 2006 Andreas Röver * cleanup of disasmtomoves classes, moved them also into lib as they are not really gui Sun Apr 30 21:07:46 CEST 2006 Andreas Röver * rename pieceColor to piececolor Sun Apr 30 21:01:15 CEST 2006 Andreas Röver * ArcBall_c -> arcBall_c proper name for that class Sun Apr 30 20:49:46 CEST 2006 Andreas Röver * rename acrball file to all lowercase more files are going to follow. This is the start of a cleanup to get some kind of rules into filenames, and typenames Sun Apr 30 17:02:42 CEST 2006 Andreas Röver * merge VoxelView into voxelDrawer_c This needs some more cleanup, but there was no reason for the VoxelView base class any more Sun Apr 30 17:02:08 CEST 2006 Andreas Röver * fix static linking against flu and fltk Sat Apr 29 13:58:31 CEST 2006 Andreas Röver * set value of solution selector properly when activating first found solution Sat Apr 29 13:51:32 CEST 2006 Andreas Röver * select proper solution after deleting some of them Sat Apr 29 13:44:28 CEST 2006 Andreas Röver * properly place solution selector on Solver tab Sat Apr 29 13:29:56 CEST 2006 Andreas Röver * implement dropping of disassemblies and only keeping the disassembly information so save memory Sat Apr 29 09:52:40 CEST 2006 Andreas Röver * more updates to NEWS file Fri Apr 28 22:10:59 CEST 2006 Andreas Röver * simplify the already implemented sorting with new disassembly info class and implement missing we now only use the disassembly info for comparison. This class is always creates, even when the complete disassembly is available. Comparisons are faster with is anyway so it should be worth it Fri Apr 28 20:27:25 CEST 2006 Andreas Röver * update 2 puzzles with new weight feature Fri Apr 28 16:37:37 CEST 2006 Andreas Röver * update news file with new developments Fri Apr 28 16:32:36 CEST 2006 Andreas Röver * implement weights in the disassembler when the disassembler has found a new move it adds the weights off all pieces that move and all pieces that stay and if the weigth of the steady group is larger, this group is moved instead in the opposite direction Fri Apr 28 16:31:52 CEST 2006 Andreas Röver * solution number and assembly number should not be displayed in scientific form Fri Apr 28 16:30:55 CEST 2006 Andreas Röver * add gui for the weight field Fri Apr 28 16:28:33 CEST 2006 Andreas Röver * add a field "weight" to voxel spaces this field will allow the disassembler to properly select which pieces to move. So it is possible to keep frames and boxes steady while the inner pieces move around Fri Apr 28 16:27:09 CEST 2006 Andreas Röver * replace internal structure of separation info class with something simpler this new version requires less memory it is a prefix order array representation of the tree, now we can save and load properly Fri Apr 28 16:25:35 CEST 2006 Andreas Röver * update news Thu Apr 27 21:58:29 CEST 2006 Andreas Röver * proper sort, even for solution info only cases Thu Apr 27 16:51:52 CEST 2006 Andreas Röver * when loading a disassembly info, check, if there actually is one Thu Apr 27 16:44:19 CEST 2006 Andreas Röver * show a window when recalculating all disassemblies Thu Apr 27 16:38:14 CEST 2006 Andreas Röver * fix for function that removes information from movement cache for one piece the entry counter was not decreased, even when elements were removed Thu Apr 27 16:37:27 CEST 2006 Andreas Röver * add possibility to display some information about the usage of the movement cache Thu Apr 27 16:36:50 CEST 2006 Andreas Röver * add buttons to replace disassemblies by disassembly info and recalc disassembly and other things with disasms Thu Apr 27 16:33:47 CEST 2006 Andreas Röver * fix for loading in assembler 0. The last entry may be not complete the last entry will only contains valid information for the status array, all other fields are too small anyway, so skip them for the last (meaning the one that is equal to piecenumber) Wed Apr 26 22:03:11 CEST 2006 Andreas Röver * show disassembly information, if present Wed Apr 26 22:01:19 CEST 2006 Andreas Röver * add function to delete solutions without disassembly (info) Wed Apr 26 21:55:58 CEST 2006 Andreas Röver * add separation info to puzzle and solution classes now you can have a treeInfo field, if the tree field is empty Wed Apr 26 21:54:24 CEST 2006 Andreas Röver * add a separation info class that contains part of the information of the disassembly class this part is the dificulty of the disassembly, the number of moves and the level information. This class will be used to have a more memory efficient way of saving the important information of a solution fr huge puzzles with lots of assemblies and many solutions Tue Apr 25 20:31:51 CEST 2006 Andreas Röver * implement proper removal of mirrored solutions from the list of found assemblies we have to try to exchange pieces that are mirrors of one another after doing the mirror transformation, to try to remove mirror orientations from the assembly The mirror pairs are detected in the prepare function and given to the assembly transform function via parameter Tue Apr 25 20:00:31 CEST 2006 Andreas Röver * initialize the edit choice once after startup Tue Apr 25 19:24:37 CEST 2006 Andreas Röver * initialize variable to make valgrind happy Sun Apr 23 11:51:37 CEST 2006 Andreas Röver * remove some unused code from assembly transformation Sat Apr 22 22:44:00 CEST 2006 Andreas Röver * fix in rotation check this fixes a problem, that occures, when the pivot piece contains mirror symmetries. Then the comparison works even, if there are mirrored shapes inside the transformed assemblies. Of course mirrored shapes are not available and so the assembly is invalid There is, of course the possibility to swap to pieces that are the mirror of one another. This needs to be inserted, but I will not do that right here Thu Apr 20 17:57:15 CEST 2006 Andreas Röver * the hotspot is in the center of the voxel given by its coordinates this simplifies the code because the hotspot doesn't change place when doing a rotation, as it was necessary for triagonal prisms It also allows toload the old savegames as they were calculated with this assumption and the had been changed a while ago Thu Apr 20 17:56:26 CEST 2006 Andreas Röver * print some more information when showing a voxel space Thu Apr 20 17:55:38 CEST 2006 Andreas Röver * remove debug code, no longer required I assume the code is working Wed Apr 19 16:42:54 CEST 2006 Andreas Röver * implement solution sorting and deletion of solutions Tue Apr 18 18:10:30 CEST 2006 Andreas Röver * remove no longer needed parameter from checkmovement function Tue Apr 18 18:06:43 CEST 2006 Andreas Röver * proper solution for the multi-piece movement checks, also add some consts, where suitable this solution is also much faster. It creates all merges with all already found movement nodes with each new found node instead if checking the movement possibility for groups of 2 pieces Mon Apr 17 19:03:49 CEST 2006 Andreas Röver * fix warnings Mon Apr 17 19:02:12 CEST 2006 Andreas Röver * replace fl_ask with fl_choice, as the first one is going to be removed and results in warnings Sun Apr 16 20:47:04 CEST 2006 Andreas Röver * z size doesn't change in rot z Sun Apr 16 20:46:05 CEST 2006 Andreas Röver * fix warnings Sun Apr 16 20:45:52 CEST 2006 Andreas Röver * fix warning Sun Apr 16 20:35:08 CEST 2006 Andreas Röver * don't use that strange deallocate template any longer, the for loop is simpler to understand Sun Apr 16 20:33:43 CEST 2006 Andreas Röver * if drop solutions, we must free them Sun Apr 16 20:33:03 CEST 2006 Andreas Röver * we need to free the voxel spaces in the voxelviewer, when the viewer gets deleted Sun Apr 16 20:32:44 CEST 2006 Andreas Röver * free gui grid map, when main window closes Sun Apr 16 20:32:01 CEST 2006 Andreas Röver * now the prixmapList also for the images directly in the main window Sun Apr 16 19:00:49 CEST 2006 Andreas Röver * widgets don't free assignes images, so we need to do that this is handled by a new class that has a list of all allocated images. The class is used for the tool tab images, others are still missing Sun Apr 16 19:00:24 CEST 2006 Andreas Röver * add destructor for pieceVisibility list to free allocated memory Sun Apr 16 11:20:34 CEST 2006 Andreas Röver * move the changelog creation at the start of the bootstrap script, as the other commands need it later on Sat Apr 15 18:41:25 CEST 2006 Andreas Röver * when the list gets full for unsorted entries, we now keep only every 2^n-th entry Sat Apr 15 16:34:20 CEST 2006 Andreas Röver * save the assembly and solution number with each solution Sat Apr 15 10:05:18 CEST 2006 Andreas Röver * multi-pieces must not be symmetry breaker, it may break the assembler Fri Apr 14 22:36:54 CEST 2006 Andreas Röver * add possibility to limit the number of solutions saved this doesn't work right now for assembly only solutions as it can only make a choice for solutions with disassembly by dropping the less interessant solutions Fri Apr 14 14:10:01 CEST 2006 Andreas Röver * add gui for sort method functionality in last patch Fri Apr 14 12:19:06 CEST 2006 Andreas Röver * assembler thread can now sort n different ways, implemented level sort level sort sorts so that the highest level is at the top if the first level is equal the 2nd level is used for comparing Fri Apr 14 11:06:48 CEST 2006 Andreas Röver * move the sorting of solutions out of puzzle, into assemberThread this is the 1st step in making a more powerful solution saving engine with more choice for the user, like different sorting saving only parts of the solutions, ... Thu Apr 13 21:49:01 CEST 2006 Andreas Röver * lower changes for the occurance of a fatal problem with the assembler the problem occures when a multi-piece is selected as symmetry breaker and later on a voxel is selected that can not be filled with the 1st of the multi-piece and thus the 2nd gets selected. The "solution" right now is to try to not choose a multi-piece as symmetry breaker even if the symmetry conditions are better. Now the problem can only occure in problems that have only multi pieces Thu Apr 13 21:21:40 CEST 2006 Andreas Röver * fix merge confloct with patch "fix assembly rotation with non minimized result shapes" Wed Apr 12 21:23:10 CEST 2006 Andreas Röver * fix assembly rotation with non minimized result shapes Wed Apr 12 18:17:22 CEST 2006 Andreas Röver * some capitalisation corrections and resize of the "Apply to all Shapes" element Wed Apr 12 17:13:20 CEST 2006 Andreas Röver * draw the grid of the solution when showing the assembler step Wed Apr 12 17:12:59 CEST 2006 Andreas Röver * proper centering for the assembler step viewer Wed Apr 12 17:12:02 CEST 2006 Andreas Röver * the 2 checkboxes in the solver tab are in the same line now Tue Apr 11 18:08:05 CEST 2006 Andreas Röver * one more symmetry for space grid 1 Tue Apr 11 17:03:43 CEST 2006 Andreas Röver * remove unused variable and widget class Mon Apr 10 21:43:17 CEST 2006 Andreas Röver * count and print number of removed rows and columns in reduce Mon Apr 10 21:14:16 CEST 2006 Andreas Röver * program now tries to load all command line options and stops at the first successfully loaded one Mon Apr 10 19:45:03 CEST 2006 Andreas Röver * use a contrasting colores in boxes in the shape status table Mon Apr 10 17:45:12 CEST 2006 Andreas Röver * proper solution for the hole checks and the handling of the outside Mon Apr 10 16:50:15 CEST 2006 Andreas Röver * add darker lines to status window for easier viewing Sun Apr 9 17:58:56 CEST 2006 Andreas Röver * remove functionality from tester that has been moved to the generator programs Sun Apr 9 17:53:33 CEST 2006 Andreas Röver * remove some not needed pieceColor.h includes Sun Apr 9 17:47:14 CEST 2006 Andreas Röver * provide an integer function for the piece color and simplify most occurances Sun Apr 9 17:23:43 CEST 2006 Andreas Röver * update NEWS with status window Sun Apr 9 16:35:48 CEST 2006 Andreas Röver * remove the 2 pack files, they don't belong into the repository Sat Apr 8 21:21:00 CEST 2006 Andreas Röver * proper virtual functions for voxel neighborhood and according implementation for connectedness Sat Apr 8 19:36:26 CEST 2006 Andreas Röver * Add color markings for important information in status window Sat Apr 8 18:37:30 CEST 2006 Andreas Röver * fix for identical comparison in status window, it was not compared against first shape Sat Apr 8 15:20:29 CEST 2006 Andreas Röver * make status window really usable the status window now includes connectivity information for the shapes, meaning is the complete shape conneced with faces, edges or only corners and does the shape contain a hole in 2D (z-direction is not considered) and 3D Sat Apr 8 10:40:45 CEST 2006 Andreas Röver * move the prepare functionality into the assembler mking the frontend classes much slower with this the prepare function can still be overwritten, if necessary, but for the current 2 space grid only the piece fits function differ by one line, so this saves us about 5kByte code Fri Apr 7 21:50:21 CEST 2006 Andreas Röver * add a basic status window containing some information for the current puzzle Fri Apr 7 20:04:23 CEST 2006 Andreas Röver * and another symmetry for space grid 1 Fri Apr 7 17:59:22 CEST 2006 Andreas Röver * 7 new symmetries for space grid 1 Fri Apr 7 17:08:12 CEST 2006 Andreas Röver * add a transform point to voxel space this function does a transformation on a given point around the origin this is used in assemly to transform the placement point of the given placements when transforming the assemblies Fri Apr 7 17:03:58 CEST 2006 Andreas Röver * try to avoid increasing the voxel space size when rotating around z axis Fri Apr 7 17:02:09 CEST 2006 Andreas Röver * virtualize identicalInBB and proper implementation for voxel space 1 Fri Apr 7 17:00:17 CEST 2006 Andreas Röver * another new symmetry type for space grid 1 Fri Apr 7 16:59:32 CEST 2006 Andreas Röver * properly center the placement browser display by useing the grid size calculation Fri Apr 7 16:43:17 CEST 2006 Andreas Röver * header time: add missing GPL headers Fri Apr 7 16:41:11 CEST 2006 Andreas Röver * add a hotspot checker to the test program Thu Apr 6 21:44:59 CEST 2006 Andreas Röver * fix the default version for the bounding box, the output pointers can be null Thu Apr 6 21:19:14 CEST 2006 Andreas Röver * corrections to hotspot calculation in voxel 1 Thu Apr 6 21:18:41 CEST 2006 Andreas Röver * corrections to hotspot calculation in the old voxel space Thu Apr 6 19:05:39 CEST 2006 Andreas Röver * insert a bit of (commented out) code that can draw the hotspot Thu Apr 6 19:04:37 CEST 2006 Andreas Röver * hotspot values need to be corrected according to the voxel space Thu Apr 6 16:43:52 CEST 2006 Andreas Röver * impelement assembler frontend for space grid 1 and activate it Thu Apr 6 16:43:19 CEST 2006 Andreas Röver * implement proper hotspot calculation for voxel space 1 Thu Apr 6 16:38:17 CEST 2006 Andreas Röver * implement comparison function that also looks for rotations Thu Apr 6 16:28:56 CEST 2006 Andreas Röver * add a function to tester that allows calculation of symmetries Thu Apr 6 16:28:26 CEST 2006 Andreas Röver * some better indentation Thu Apr 6 16:28:14 CEST 2006 Andreas Röver * remove generated code from symmetriy class files into inc files We now have as source only the possible rotations and the symmetries All other tables are calculated and written into include files that are used by the symmetry classes. This generation is done by the generator program, as this needs a working library bootstrapping is a bit complicated this patch also removes the class definition of symmetry_0 in the symmetry header file Wed Apr 5 21:50:07 CEST 2006 Andreas Röver * constructors for the voxel spaces are public again Wed Apr 5 21:21:55 CEST 2006 Andreas Röver * proper bounding box calculation after rotation in voxel space 1 round x and y axis Wed Apr 5 21:20:39 CEST 2006 Andreas Röver * virtualize mirror functions and provice proper implementation for voxel space 1 Wed Apr 5 20:58:34 CEST 2006 Andreas Röver * the print routines didn't honor the hotspots until now Tue Apr 4 21:44:48 CEST 2006 Andreas Röver * move class global variable into function that only uses it Tue Apr 4 21:34:29 CEST 2006 Andreas Röver * remove warning from voxel 1 Tue Apr 4 21:33:33 CEST 2006 Andreas Röver * divide the symmetries file into base and grid space version 0 Tue Apr 4 21:13:54 CEST 2006 Andreas Röver * implement rotation around z axis for voxel type 1 Tue Apr 4 17:12:45 CEST 2006 Andreas Röver * remove minimize function from voxel, as it is not used Tue Apr 4 16:59:56 CEST 2006 Andreas Röver * proper minimisation for voxelspaces of type 1 Tue Apr 4 16:58:39 CEST 2006 Andreas Röver * remove the necessity to call gridTypeChanged in constructor of voxelDraw inherited classes Tue Apr 4 16:58:11 CEST 2006 Andreas Röver * mention that the triandgular prisms space grid has no assembler and disassembler Mon Apr 3 21:14:24 CEST 2006 Andreas Röver * create specialized voxel space for grid type 1, rotation along z axis not not working Mon Apr 3 18:36:52 CEST 2006 Andreas Röver * virtualize bounding box and hotspot calculation, provide generic but slow default Sun Apr 2 20:09:48 CEST 2006 Andreas Röver * make compilable for apple Sun Apr 2 20:15:41 CEST 2006 Andreas Röver * remove dead code from gridType_c and also check for available assembler and disassembler before solving Sun Apr 2 16:07:37 CEST 2006 Andreas Röver * start version 0.2.0 Sun Apr 2 16:07:17 CEST 2006 Andreas Röver * proper frames for voxeldrawer 1 Sun Apr 2 11:29:47 CEST 2006 Andreas Röver * make sure only visible surfaces are drawn and also the variable markers are only drawn on visible surfaces Sat Apr 1 18:10:06 CEST 2006 Andreas Röver * prepare for release of 0.1.9 Sat Apr 1 14:24:50 CEST 2006 Andreas Röver * better frame drawing, outsides of inside corners are no longer framed Sat Apr 1 13:29:04 CEST 2006 Andreas Röver * implement frame drawing Thu Mar 30 18:30:50 CEST 2006 Andreas Röver * remove Region checking function to voxelDrawer base class Thu Mar 30 18:19:14 CEST 2006 Andreas Röver * move the grid drawing functions into the base class Thu Mar 30 18:06:52 CEST 2006 Andreas Röver * factor out the voxel space drawing function from the voxelDrawer subclasses Thu Mar 30 17:40:04 CEST 2006 Andreas Röver * proper cursor for voxeldrawer 1 Wed Mar 29 21:22:27 CEST 2006 Andreas Röver * missed to initialize a member of gridtype when loading from xml node Wed Mar 29 17:19:39 CEST 2006 Andreas Röver * some comments and cleanup to the grideditor header file Wed Mar 29 17:18:28 CEST 2006 Andreas Röver * some improvements to dialog layout and a note saying what the parameters of gridtypes mean Wed Mar 29 17:17:35 CEST 2006 Andreas Röver * fix for anchor triangle position Wed Mar 29 17:16:44 CEST 2006 Andreas Röver * add virtual function to calculate the display size of a voxel space and use that for centering Wed Mar 29 17:16:19 CEST 2006 Andreas Röver * add assert to make sure we actually have a symmetry class Wed Mar 29 17:15:59 CEST 2006 Andreas Röver * fix case with break Tue Mar 28 21:47:16 CEST 2006 Andreas Röver * properly draw voxel space 1 base unit and the vraible voxel markers, the frame is still missing Tue Mar 28 18:43:28 CEST 2006 Andreas Röver * factor out the other functions of the grid editor classes Tue Mar 28 17:20:19 CEST 2006 Andreas Röver * factor out handle from grid editor classes into base class Tue Mar 28 16:41:12 CEST 2006 Andreas Röver * Implement mouse position calculation and cursor drawing for grideditor 1 Mon Mar 27 21:37:34 CEST 2006 Andreas Röver * enable displaying of constraing colors in grid editor 1 Mon Mar 27 21:31:01 CEST 2006 Andreas Röver * grid editor 1 can now draw the grid but without cursor and without color markers Mon Mar 27 17:36:03 CEST 2006 Andreas Röver * add templates for the triangular prism space grid, these are right now only copies of the brick types Mon Mar 27 17:24:20 CEST 2006 Andreas Röver * grid type selector window now toggles parameter panes Mon Mar 27 17:11:48 CEST 2006 Andreas Röver * add the triangular grid types and all the necessary cases, filled right now with placeholders Sun Mar 26 16:46:55 CEST 2006 Andreas Röver * stop is also possible in preparation phase Sun Mar 26 12:17:17 CEST 2006 Andreas Röver * the grid editor and 3d view are replaced now, when a new puzzle is puz into the window Sun Mar 26 12:11:45 CEST 2006 Andreas Röver * remove commented out code and add destructor to gridType_c Sun Mar 26 12:11:14 CEST 2006 Andreas Röver * initialize all variables in grid editor Sun Mar 26 12:10:52 CEST 2006 Andreas Röver * proper save and load routines for the BRICK grid type Sat Mar 25 21:06:50 CET 2006 Andreas Röver * button closes the grid type windows, also fix 100% CPU load with parameter window Sat Mar 25 20:33:16 CET 2006 Andreas Röver * 3d view now responds to axis lengths Sat Mar 25 19:29:38 CET 2006 Andreas Röver * initialize gridType properly and make the widget usable and the values consistent Sat Mar 25 17:45:32 CET 2006 Andreas Röver * first version of the grid type selector window Sat Mar 25 14:41:38 CET 2006 Andreas Röver * proper initialize bounding box for empty voxel spaces on construction, don't do anything on centering empty spaces Sat Mar 25 14:40:25 CET 2006 Andreas Röver * Ronald prefers the plural for the first tab title :-) Sat Mar 25 16:12:05 CET 2006 Andreas Röver * add first version of the dialogs required for grid type parameters Fri Mar 24 22:11:47 CET 2006 Andreas Röver * fix "Piece x can be placed nowhere within the result" the preparator didn't return the shape id, but the index withing the pieces of the problem, this could lead to strange behaviour when the pieces were not sorted Fri Mar 24 21:58:29 CET 2006 Andreas Röver * plus memory leak in burrTxt Fri Mar 24 22:01:09 CET 2006 Andreas Röver * fix merge conflict in voxel_c Fri Mar 24 21:57:43 CET 2006 Andreas Röver * switch from char * to std::string for shape names Fri Mar 24 21:56:59 CET 2006 Andreas Röver * plug 2 memory leaks in disassembler, 2 objects were not freed Fri Mar 24 21:26:57 CET 2006 Andreas Röver * properly handle voxel drawing with base class and concrete voxel drawer for cubes Fri Mar 24 16:49:09 CET 2006 Andreas Röver * stop also works when currently disassembling Fri Mar 24 16:48:48 CET 2006 Andreas Röver * also clear color information when emptying a cube in the voxel space Thu Mar 23 18:15:24 CET 2006 Andreas Röver * add the GPL file header Thu Mar 23 18:10:27 CET 2006 Andreas Röver * rename SquareEditor to gridEditor_0_c this also lead to some cleanup within the usage of the enums and also the functions in the guigrittype factory are const Thu Mar 23 17:46:56 CET 2006 Andreas Röver * introduce gridEditor_c as base type for SquareEditor this is highly probable not the right final solution but a start Thu Mar 23 17:03:54 CET 2006 Andreas Röver * introduce guigridtype class this class is the factory for the grid type dependent widgets just like gridtype class is the factory for the parts of the library Thu Mar 23 17:01:47 CET 2006 Andreas Röver * get rid of the label in the voxel drawer and voxel view widgets Mon Mar 20 20:46:35 CET 2006 Andreas Röver * fit burrTxt and convert for latests library interface changes (gridType, ...) Mon Mar 20 20:36:21 CET 2006 Andreas Röver * bitrot on tester, lets for now comment out most of it, we will care for the useful functions later on Mon Mar 20 20:25:24 CET 2006 Andreas Röver * voxel_c is not the base class for all voxel classes, voxel_0_c as usual the subclass for bricks for now only the rotate functions are virtual, but more are surely to come Mon Mar 20 17:18:49 CET 2006 Andreas Röver * move the missing 2 voxel constructors to factory creation This patch temprarily disables the currently unused the piecegenerator Mon Mar 20 17:18:08 CET 2006 Andreas Röver * missed copying the symmetry class then copying assemblies Mon Mar 20 16:46:59 CET 2006 Andreas Röver * some optimisations in tester and add functions to analyze parallel epipedions in tester Mon Mar 20 16:43:41 CET 2006 Andreas Röver * also update the result id, when a shape is removed from a problem this fixes a crash, when opening the puzzle tab, because of an invalid result shape id. The id was for the last shape, one shape was deleted, the result not updated, and became invalid Sun Mar 19 21:49:04 CET 2006 Andreas Röver * comment out the possible future gridTypes, they only create warnings Sun Mar 19 21:36:32 CET 2006 Andreas Röver * remove constness from gridType in puzzle this is required because the parameters of the gridType are in fact editable, you can just not change the type itself Sun Mar 19 21:29:30 CET 2006 Andreas Röver * move symmetry creation to gridType factory Sun Mar 19 21:16:13 CET 2006 Andreas Röver * move assembler and disassembler into gridType factory Sun Mar 19 20:51:27 CET 2006 Andreas Röver * move voxel creation to gridType factory Sun Mar 19 18:24:36 CET 2006 Andreas Röver * introduce gridType_c and make symmetries to a class This will finally lead to grid type independent code right now it replaces the define NUM_SYMMETRIES by the value sreturned by grid type and on that way introduces the class wherever necessary Sun Mar 19 15:54:52 CET 2006 Andreas Röver * check result shape id after loading and reset, when invalid Sun Mar 19 11:46:21 CET 2006 Andreas Röver * AUTHORS and NEWS updates Sat Mar 18 16:40:25 CET 2006 Andreas Röver * remove a warning Sat Mar 18 13:48:31 CET 2006 Andreas Röver * another update to symmetry calculation and avoidance The last update solving the squarrel bug resulted in a huge slowdown of JayCube because another piece was choosen for the symmetry breaker. This update results in JayCube using again the right piece for symmetry breaker. It passes the regression tests, so let's hope it's right Sat Mar 18 10:54:29 CET 2006 Andreas Röver * fix bug with multi pieces that prevented finding solutions sometimes This bug occured in the multiPieceWhy puzzle file in the regression tests. THe problem was that the program expects to have at least n possible placements for a piece that occures n times, otherwise it is not possible to place them all. But the special first piece might have only one placement removing that from all the others and thus all other pieces might have only n-1 placement and that is still valid ad the last placement is in the first piece Sat Mar 18 10:54:12 CET 2006 Andreas Röver * rename tabs in GUI Sat Mar 18 10:52:59 CET 2006 Andreas Röver * make problem selectable in the command line program Fri Mar 17 17:58:58 CET 2006 Andreas Röver * make sure we have a valid problem selected when there is one Fri Mar 17 17:14:52 CET 2006 Andreas Röver * reorder some mnemonics to achieve better memory access parallelity Fri Mar 17 17:13:11 CET 2006 Andreas Röver * remove the 2nd updown entry from the assembler list of inputs Fri Mar 17 17:06:20 CET 2006 Andreas Röver * merge the up and down array into one This frees one register for the assembler versions of the cover and uncover routines for intel cpus and this one free register allows for a much cleaner implementation without using stack and with 2 nearly identical implementations for both routines Thu Mar 16 21:51:45 CET 2006 Andreas Röver * first version of an assembler implementation Thu Mar 16 21:50:50 CET 2006 Andreas Röver * spelling of visible texts Wed Mar 15 16:36:32 CET 2006 Andreas Röver * swap the sub block number to a place before the piece name in the piece visibility list Wed Mar 15 16:33:22 CET 2006 Andreas Röver * update year for copyright in about box Tue Mar 14 16:59:36 CET 2006 Andreas Röver * fix deadlock when pressing stop after the thread has already been finshed This is not completely save, but should work in most circumstances (it might fail when the thread stops between the start of the routine and the setting of the state) Also unpress the button Tue Mar 14 16:36:07 CET 2006 Andreas Röver * rearrange the elements in the size changing tab a bit Sun Mar 12 18:57:03 CET 2006 Andreas Röver * add separators for the other drag points in the problem tab Sun Mar 12 18:45:00 CET 2006 Andreas Röver * take focus shortly when clicking into grid editor, this makes shure values are taken over from input lines Sun Mar 12 18:30:40 CET 2006 Andreas Röver * do update the pieve visibility selector then the number of pieces changed this bug was introduces when not updating the selector when you just select another solution to not reset the state. But now it was possible to add new pieces to the selector and it didn't update this is fixed now Sun Mar 12 18:14:21 CET 2006 Andreas Röver * make solution selector start from 1 instead of 0 also check, if the current value of the slider is not bigger than the number of solutions (can happen when switching problems) Sat Mar 11 17:24:03 CET 2006 Andreas Röver * fix for Browse placement button not enabled after a puzzle has been completely analyzed Sat Mar 11 17:23:42 CET 2006 Andreas Röver * add the latest speedups to NEWS file Sat Mar 11 17:07:29 CET 2006 Andreas Röver * cleanup and comments here and there Sat Mar 11 14:42:48 CET 2006 Andreas Röver * add a placement removal phase before the reduction that is a more general form if the recently added speedup Its something like this: for a column c1: if there is a column c2 that has a 1 in each row c1 has a one then you can remove all rows that have a one in c2 but not in c1 because it is required for c1 and c2 to be one at the same time. this thinns out the matrix before the more expensive piece placement phase comes Sat Mar 11 13:13:01 CET 2006 Andreas Röver * speedup for reduction the idea here is that if one piece occupies certain unit in all its placements it is impossible that any other piece can occupy that unit, so all placements for any other piece that uses that voxel can be removed. This lets the matrix shink must faster and saves us some of the costly cover and uncover operations. The results can be quite enormous: One of frans polycube puzzle where you put the pieces onto sticks went down from 377 to 27 seconds. Sat Mar 11 13:11:06 CET 2006 Andreas Röver * some cleanup in assembler reformulate some while loops to for loops, that is easier to read Fri Mar 10 22:31:48 CET 2006 Andreas Röver * some cleanup and useless code removal in reduce Fri Mar 10 21:55:31 CET 2006 Andreas Röver * add clumps concept to speed up assembling of some puzzles This is taken from Bill Cuttlers program. In my implementation it means that we remove columns that are identical within the matrix as they don't contribute any information Wed Mar 8 17:48:51 CET 2006 Andreas Röver * some more updates to the NEWS file Tue Mar 7 20:58:05 CET 2006 Andreas Röver * rename file pieceGenerator to piecegenerator Tue Mar 7 20:56:29 CET 2006 Andreas Röver * rename file AssemblyCallbacks to assemberthread Tue Mar 7 20:46:50 CET 2006 Andreas Röver * rename assemblerThread to assemblerThread_c Tue Mar 7 20:41:14 CET 2006 Andreas Röver * rename movementCache to movementCache_c Tue Mar 7 19:12:53 CET 2006 Andreas Röver * add bt_assert this file should have been there for a long time :-( Tue Mar 7 19:05:48 CET 2006 Andreas Röver * add option to enable/disable fade out of pieces that are removed in the animation Tue Mar 7 17:11:29 CET 2006 Andreas Röver * Window title for placement browser Tue Mar 7 17:08:54 CET 2006 Andreas Röver * add a close button to the browse placement dialog Mon Mar 6 19:33:04 CET 2006 Andreas Röver * and another symmetry group Mon Mar 6 19:21:44 CET 2006 Andreas Röver * comments and cleanup for groups editor Sun Mar 5 20:17:55 CET 2006 Andreas Röver * remove warnings in scale function Sun Mar 5 20:15:51 CET 2006 Andreas Röver * include dependency cleanup this will hopefully remove some header dependencies and make compilation faster Sun Mar 5 15:15:05 CET 2006 Andreas Röver * cleanup and comments for image export files Sun Mar 5 12:05:09 CET 2006 Andreas Röver * cleanup and commenting of image class files Sat Mar 4 18:08:52 CET 2006 Andreas Röver * cleanup and valgrind errors removed (uninitialized variables) Sat Mar 4 17:33:43 CET 2006 Andreas Röver * save aa in imageInfo and so get righ of aa calculation in PostDraw routine Sat Mar 4 17:31:20 CET 2006 Andreas Röver * simplify the setup for the image export Sat Mar 4 17:31:05 CET 2006 Andreas Röver * plut memory leak Sat Mar 4 17:12:27 CET 2006 Andreas Röver * restructuring of image export image export is now done inside the callbacks of a voxelView class this is necessary because otherwise (e.g in the thread) the openGL context might be absent, this will also enable us to support later new voxel space types without a lot of work Sat Mar 4 17:10:56 CET 2006 Andreas Röver * divide the image grabbing into 2 parts so that we can put these into the VoxelView callbacks also get rid of the OpenGL setup, as it's now done in the voxelView and we don't need that any longer Sat Mar 4 17:06:31 CET 2006 Andreas Röver * restructuring of voxel output classes now voxel view is the base and responsible for rotation, scaling ligtning, ... voxelDrawer is only responsible for drawing cube based voxel spaces also add a callback class to VoxelView to make is possible to call functions pre and post the drawing of the voxel space Wed Feb 22 21:40:48 CET 2006 Andreas Röver * Rework image export into state mashine Part III now the image output is done in small steps that only draw one image ino the OpenGL context and then return. What is left is to integrate this into the VoxelDrawer Wed Feb 22 19:51:08 CET 2006 Andreas Röver * Rework image export into state mashine Part II Wed Feb 22 18:47:04 CET 2006 Andreas Röver * Rework image export into state mashine Part I The image export can not be done in a thread, bu we need to do it in the draw function, but for that not to freeze the application we need to be able to do everything in small steps, this is the first part of this work Wed Feb 22 18:20:26 CET 2006 Andreas Röver * remove unused variable, also remove the switch to the GL_BACK buffer Wed Feb 22 16:30:48 CET 2006 Andreas Röver * improvement to scaleDown Wed Feb 22 16:30:40 CET 2006 Andreas Röver * fix typo Wed Feb 22 16:30:08 CET 2006 Andreas Röver * disable left arrows when no shape or no problem is available Wed Feb 22 16:29:38 CET 2006 Andreas Röver * initialize variable properly Wed Feb 22 16:29:15 CET 2006 Andreas Röver * add one more future addition to documentation Tue Feb 21 21:10:32 CET 2006 Andreas Röver * NEWS and AUTHORS updated slightly Tue Feb 21 20:56:42 CET 2006 Andreas Röver * make 2 module local functions static Tue Feb 21 20:46:29 CET 2006 Andreas Röver * windows requires the glext header for openGL 1.2 functions Tue Feb 21 20:28:48 CET 2006 Andreas Röver * implement downscaling Mon Feb 20 17:58:23 CET 2006 Andreas Röver * deactivate z-mask writing, when outputting the transparent pieces This will make the rendering of the transparent objects more independent of the orientation the object, but they still change while rotating also a bug was fixed. 1 is opaque alpha value and not 255 Sun Feb 19 20:43:14 CET 2006 Andreas Röver * move image export into thread, this enables a progress report in the status line Sun Feb 19 18:11:55 CET 2006 Andreas Röver * remove useless empty lines, add GPL header to 2 files, add one missing header exclusion #ifdef __xx_H__ Sun Feb 19 17:46:11 CET 2006 Andreas Röver * some comments for DisasmToMoves Sun Feb 19 17:39:55 CET 2006 Andreas Röver * after doing File->New with a puzzle with shapes and then adding a new shape to the empty puzzle wouldn't update the 3D view Sun Feb 19 17:28:29 CET 2006 Andreas Röver * comments and some cleanup for grid editor Sun Feb 19 16:44:43 CET 2006 Andreas Röver * use the active flag instead of my own lock flag in the grid editor Sun Feb 19 16:21:23 CET 2006 Andreas Röver * reformatting and comments for piece color module Sun Feb 19 16:20:35 CET 2006 Andreas Röver * use the provided functions for lighting up and darking down the checkerboard pattern in the 3d view Sun Feb 19 15:57:07 CET 2006 Andreas Röver * implement default sizes for the image exporter Sun Feb 19 12:09:17 CET 2006 Andreas Röver * also use MY for the squares on the variable cubes Sun Feb 19 12:04:39 CET 2006 Andreas Röver * add comment for a define value Sun Feb 19 11:29:35 CET 2006 Andreas Röver * don't increase light of dimmed pieces that much any longer Fri Feb 17 23:06:52 CET 2006 Andreas Röver * do transparent object drawing always at the end to make them appear in front of opaque ones Fri Feb 17 23:02:10 CET 2006 Andreas Röver * improvements to 3D view - remove lightnig dependency on scale - get rid of wideangle camera for big objects Fri Feb 17 20:45:02 CET 2006 Andreas Röver * make the size of the edge variable at runtime, so that dimmed pieces can be drawn without edge Fri Feb 17 20:24:15 CET 2006 Andreas Röver * remove the showColors parameter, it was not used Fri Feb 17 18:12:17 CET 2006 Andreas Röver * implement dimming of non moving pieces for image export Fri Feb 17 13:58:23 CET 2006 Andreas Röver * fix crash when stepping after the assembling has finished searching Fri Feb 17 13:31:11 CET 2006 Andreas Röver * include a prepare button that makes the placement browser and the assembly debuggin more easily accessible Fri Feb 17 12:54:08 CET 2006 Andreas Röver * properly clear status line, when doing "new puzzle" Fri Feb 17 12:52:08 CET 2006 Andreas Röver * make placement browser and image export window modal Fri Feb 17 12:44:53 CET 2006 Andreas Röver * properly clip the grid editor group Fri Feb 17 11:43:37 CET 2006 Andreas Röver * left align shape column in goups editor Fri Feb 17 11:43:07 CET 2006 Andreas Röver * use the shape labels and sort the shapes and pieces nicely for the CubeInCage puzzle Fri Feb 17 11:38:08 CET 2006 Andreas Röver * higher inisital section size for section with shapes Fri Feb 17 11:34:30 CET 2006 Andreas Röver * use same scheme for copying problems as for shapes. The copy has no name and user can label it later Thu Feb 16 20:29:59 CET 2006 Andreas Röver * remove all that not required linebreak stuff for image alignment Thu Feb 16 20:08:56 CET 2006 Andreas Röver * add case for export of problem Thu Feb 16 20:07:51 CET 2006 Andreas Röver * seems like on my linux the grepped images are not transparent, so we have to change bg to transparent Thu Feb 16 16:34:02 CET 2006 Andreas Röver * implement first version of solution export Thu Feb 16 16:33:12 CET 2006 Andreas Röver * simplify opengl image constructor interface Thu Feb 16 16:30:31 CET 2006 Andreas Röver * implement blit and minimalize width in image class (needed for export) Wed Feb 15 22:12:50 CET 2006 Andreas Röver * updates to ImageExport Window (more window elements work now Wed Feb 15 22:12:20 CET 2006 Andreas Röver * const accessors to the voxelView class Wed Feb 15 22:10:57 CET 2006 Andreas Röver * some header #ifdex exlusions were missing Wed Feb 15 22:09:09 CET 2006 Andreas Röver * move all image OpenGL generationstuff into image class Wed Feb 15 22:02:40 CET 2006 Andreas Röver * make the addTransformation function const; moving an only locally used variable to stack Wed Feb 15 21:29:10 CET 2006 Andreas Röver * "for all" only works with the size tool tab and not transformation and contrain tab Wed Feb 15 21:28:29 CET 2006 Andreas Röver * sizes only increase for all but the active shape, if "for all" is active Tue Feb 14 18:18:05 CET 2006 Andreas Röver * SYMMETRY_GROU_O_PS -> SYMMETRY_GROUPS (fix typo in name) Tue Feb 14 18:17:30 CET 2006 Andreas Röver * fix problem with exchanging 2 shapes in a problem Tue Feb 14 18:16:44 CET 2006 Andreas Röver * update some comments in the sourcecode that were quite outdated Tue Feb 14 18:15:12 CET 2006 Andreas Röver * fix version discrepancy in assembler load and save and also make it more robust to errors in the xml string Tue Feb 14 18:14:46 CET 2006 Andreas Röver * some documentation updates Mon Feb 13 21:49:02 CET 2006 Andreas Röver * correct problem with Placement Browser Button no longer getting disabled Mon Feb 13 21:48:30 CET 2006 Andreas Röver * update example files with the results of the improved disassembler Mon Feb 13 17:40:00 CET 2006 Andreas Röver * properly clean problem status line when no information is available Mon Feb 13 17:34:27 CET 2006 Andreas Röver * don't add shapes as pieces that are the result, and remove shapes from piece list when set as result Mon Feb 13 17:09:47 CET 2006 Andreas Röver * never add groups with count of 0 fixes issue in the group editor where you clicked on a cell and entered 0 and the cell turned colored even if the group size has been 0 Mon Feb 13 17:02:22 CET 2006 Andreas Röver * apply any open edit boxes in the groups Editor before closing Mon Feb 13 16:11:25 CET 2006 Andreas Röver * group numbers don't need to be incremented as group 0 always exists Mon Feb 13 15:51:35 CET 2006 Andreas Röver * correct title for color editor when changing colors Mon Feb 13 15:44:57 CET 2006 Andreas Röver * edit mode as a config option Mon Feb 13 15:33:16 CET 2006 Andreas Röver * right mouse button always clears grid cells in grid editor Mon Feb 13 15:32:44 CET 2006 Andreas Röver * correctly set up colors when loading a puzzle Sun Feb 12 20:40:37 CET 2006 Andreas Röver * show number of pieces in problem Sun Feb 12 20:34:11 CET 2006 Andreas Röver * some little text changes for tooltips and headers Sun Feb 12 20:26:53 CET 2006 Andreas Röver * Show Shape name and correct number in group editor Sun Feb 12 18:59:42 CET 2006 Andreas Röver * display vixed, variable and sum of both in the shape status line Sun Feb 12 18:52:00 CET 2006 Andreas Röver * don't use different size ticks for the LineSpacer (used for z-layer selector) doesn't work well Sun Feb 12 18:47:00 CET 2006 Andreas Röver * warn uses when opening a file containing a paused solution search Sun Feb 12 12:25:49 CET 2006 Andreas Röver * corrections for the calculation of the symmetry breaker the old version did check against the symmetry bitmask of the shape in its current position. But now we do check against the unified bitmask of all symmetry bitmask of the shape in all its 48 transformations Sat Feb 11 22:20:40 CET 2006 Andreas Röver * update documentation with more possible future projects Sat Feb 11 22:00:55 CET 2006 Andreas Röver * blocklists honor active state in when they are drawn Sat Feb 11 09:49:19 CET 2006 Andreas Röver * used wrong problem selector for piece browser Fri Feb 10 22:29:44 CET 2006 Andreas Röver * use integer input instead of value inputs for the size input fields this alows to correctly set the callbacks when fields are edited with value input the callback comes whenever the user changes 1 digit now we only get the callback when the user leaves or presses enter Fri Feb 10 21:39:46 CET 2006 Andreas Röver * new shapes have the size of the currently selected one Fri Feb 10 21:33:13 CET 2006 Andreas Röver * don't allow focus on widgets that don't accept keyboard input Fri Feb 10 17:06:01 CET 2006 Andreas Röver * fix move to origin Fri Feb 10 17:04:09 CET 2006 Andreas Röver * improvements to image export now the size is honored, the window is much better, antialiasing and background settings are honored, image is not longer top down, ... Thu Feb 9 20:45:36 CET 2006 Andreas Röver * better tooltip text Thu Feb 9 20:35:27 CET 2006 Andreas Röver * link sizes, checkbox to make operations on tool tab to all shapes Thu Feb 9 11:15:58 CET 2006 Andreas Röver * fix problem with color selector and piece selector need to select neutral color, when it's shown when deleting last shape don't select the 0 Thu Feb 9 11:13:52 CET 2006 Andreas Röver * new images for scaling and shifting by ronald and corresponding functions implemented The minimum scale function is missing, everything else should work also the scalers do now have input fields instead of only scrollers Wed Feb 8 13:22:26 CET 2006 Andreas Röver * fix bug when adding the first shape when the list was created the selected element has been 0 even though there has been no element and thus no update was made, when the selection was set to the first piece Wed Feb 8 13:08:15 CET 2006 Andreas Röver * remove the rubbish the the growing number of digits for the progress bar, it didn't work Wed Feb 8 13:02:06 CET 2006 Andreas Röver * better progress bar with better colored label Tue Feb 7 20:56:49 CET 2006 Andreas Röver * some comments Tue Feb 7 16:52:47 CET 2006 Andreas Röver * fix problem with nonminimized pieces and assembly rotation Sat Feb 4 11:50:21 CET 2006 Andreas Röver * update NEWS Sat Feb 4 11:47:34 CET 2006 Andreas Röver * increase version of assembler, so old saved puzzles can not be continued with the new assembler Sat Feb 4 11:44:11 CET 2006 Andreas Röver * huge improvement for assembly engine for puzzles with many identical pieces Thu Feb 2 21:11:33 CET 2006 Andreas Röver * add some simple debug facilities for the assembler with that come 2 bugfixes in the getAssembly routine that never came to surface because it was only called when the puzzle was completely assembled, but now it can also be called with a partial state of the assembler Thu Feb 2 17:13:59 CET 2006 Andreas Röver * disable the brose placement button, when assembler is running Thu Feb 2 17:12:45 CET 2006 Andreas Röver * display percent values in the progress display Wed Feb 1 18:14:58 CET 2006 Andreas Röver * simplify function getPiecePlacementCount seems like I have been not myself when I wrote that function we always have the number of rows in a column in the column header Tue Jan 31 20:26:21 CET 2006 Andreas Röver * fix crash when file given on command line didn't exist Tue Jan 31 20:00:28 CET 2006 Andreas Röver * fix for the independent zoom levels, the slider was not updated properly Mon Jan 30 19:40:26 CET 2006 Andreas Röver * fix problem number in status bar Mon Jan 30 19:40:12 CET 2006 Andreas Röver * missing include Mon Jan 30 18:57:42 CET 2006 Andreas Röver * problems with empty names, rename the "rename" button to "label" Mon Jan 30 17:47:02 CET 2006 Andreas Röver * more color names removed from xpm images (hopefully all now) Mon Jan 30 17:20:04 CET 2006 Andreas Röver * correct typo Mon Jan 30 17:19:46 CET 2006 Andreas Röver * use prefix C for color lists Mon Jan 30 17:18:23 CET 2006 Andreas Röver * lots of comments Sun Jan 29 22:17:56 CET 2006 Andreas Röver * use S prefix for shapes, P for Problems and then Sx - Label for piece description Sun Jan 29 22:17:12 CET 2006 Andreas Röver * fix the update for the piece visibilty only then puzzle or problem changes Sun Jan 29 15:55:59 CET 2006 Andreas Röver * don't clear the piece visibility state when changing the only the solution Sun Jan 29 13:39:02 CET 2006 Andreas Röver * add the F-keys to the tooltips Sun Jan 29 12:55:50 CET 2006 Andreas Röver * use shape name for result viewer, bigger viewer so that longer names fit Sun Jan 29 11:57:37 CET 2006 Andreas Röver * disable the shape move left arrow when no shapes are there at all Sat Jan 28 18:53:56 CET 2006 Andreas Röver * update NEWS file Sat Jan 28 18:50:59 CET 2006 Andreas Röver * simplify a bit Sat Jan 28 18:46:39 CET 2006 Andreas Röver * also enable echanging of shapes and shape positions in problems Sat Jan 28 17:19:05 CET 2006 Andreas Röver * use a class that encapsulates the image handling for the image export Sat Jan 28 17:17:45 CET 2006 Andreas Röver * make it possible to reorder problems in the gui, shapes and colors will follow soon Sat Jan 28 13:14:33 CET 2006 Andreas Röver * remvoe abbreviations for problem buttons Fri Jan 27 19:47:24 CET 2006 Andreas Röver * as the changelog is created from the repository we don't have it IN the repository Fri Jan 27 19:13:58 CET 2006 Andreas Röver * typo in about box Fri Jan 27 19:10:35 CET 2006 Andreas Röver * fix color constraint drawing for windows (the black line around the colors was missing) Fri Jan 27 18:53:32 CET 2006 Andreas Röver * proper vertical alignment of text in blocklists and also black color in piece visibility for invisible pieces Fri Jan 27 18:46:48 CET 2006 Andreas Röver * typo in the rename problem dialog Fri Jan 27 18:46:00 CET 2006 Andreas Röver * shapes can now have names Fri Jan 27 17:10:16 CET 2006 Andreas Röver * copyright updates for 2006 Fri Jan 27 16:59:31 CET 2006 Andreas Röver * tooltips and right box for the scroller in the placement browser window Fri Jan 27 16:52:14 CET 2006 Andreas Röver * display times (except seconds) with one descimal after the point Thu Jan 26 19:24:31 CET 2006 Andreas Röver * some changelog and news updates Thu Jan 26 17:50:08 CET 2006 Andreas Röver * add lots of tool tips Thu Jan 26 17:07:18 CET 2006 Andreas Röver * don't use scientific presentation for number of assemblies and solutions Thu Jan 26 16:25:40 CET 2006 Andreas Röver * plug memory leak: found assemblies were not deleted when not disassembable, or only counted Wed Jan 25 21:38:26 CET 2006 Andreas Röver * make the initiali size for the exit part of the piece tab bigger. Disadvantate: the colors and pieces and not be hidden Tue Jan 24 17:44:29 CET 2006 Andreas Röver * ask bevore overwriting with saveAs Tue Jan 24 17:24:32 CET 2006 Andreas Röver * fixes for piece number (status line, selection after errors) Tue Jan 24 17:06:27 CET 2006 Andreas Röver * save the zoom level for the 3 tabs Wed Jan 11 18:20:39 CET 2006 Andreas Röver * and one new symmetry found by Derek Bosch Wed Jan 11 18:12:11 CET 2006 Andreas Röver * fix bug where the grid editor was only updated after leaving a square Wed Jan 11 18:06:27 CET 2006 Andreas Röver * shuffling around of the toolbar buttons Wed Jan 11 17:27:00 CET 2006 Andreas Röver * don't use named colors in the xpm files, named colors are unknown in windows Tue Jan 10 14:35:40 CET 2006 Andreas Röver * when adding a new color setup the startup color with something meaningful Tue Jan 10 14:25:58 CET 2006 Andreas Röver * move the color parts to the bottom of the toolbar Tue Jan 10 14:19:54 CET 2006 Andreas Röver * some shufling around of buttons Tue Jan 10 11:38:38 CET 2006 Andreas Röver * typo in 3d cursor drawing method Mon Jan 9 17:15:05 CET 2006 Andreas Röver * add new images to makefile Mon Jan 9 16:22:59 CET 2006 Andreas Röver * more versatile tool functions now its possible to set variable and fixed cubes on the in and on the outside and to also decolorize cubes all this is done with a more versatile function in the voxel class Mon Jan 9 11:14:18 CET 2006 Andreas Röver * correct comment Mon Jan 9 10:29:23 CET 2006 Andreas Röver * improved the disassembler a bit the disassembler now no longer finds moves where one piece is moved x units and another piece is moved y units in the same direction the disassembler now finds moved where 2 pieces are moved in the same direction, until now it only found these when movement of the first piece forced the 2nd to move. This needs to be improved to larger groups of pieces. Mon Jan 9 10:10:19 CET 2006 Andreas Röver * typo Sun Jan 8 16:26:26 CET 2006 Andreas Röver * lokalize the function checkmovement better Sun Jan 8 16:05:23 CET 2006 Andreas Röver * add for now unused antialiasing routine and some more updates to image exporter Sun Jan 8 10:32:24 CET 2006 Andreas Röver * move 3d-drawer setup routines into the drawer. Now it's possible to use these for the image export Sat Jan 7 18:06:56 CET 2006 Andreas Röver * lighter background for activated buttons in toolbar Sat Jan 7 17:40:58 CET 2006 Andreas Röver * fix for grid editor cursor, didn't show up when mirror Z was switched on Sat Jan 7 16:19:11 CET 2006 Andreas Röver * silence warning the symmetries debug code Sat Jan 7 16:18:38 CET 2006 Andreas Röver * update cursor in 2d view when ouse moves Sat Jan 7 14:53:36 CET 2006 Andreas Röver * use same idea for 3D cursor as used in grid editor, this removes the speed problem for complex cursors Sat Jan 7 14:10:30 CET 2006 Andreas Röver * proper grid editor corsor for symmetric drawing modes, remove all warings from module Thu Jan 5 10:23:45 CET 2006 Andreas Röver * cleanup the z coodinate inversion chaos and start at the bottom row of space when editing Tue Jan 3 19:10:26 CET 2006 Andreas Röver * implement edit types Tue Jan 3 19:09:58 CET 2006 Andreas Röver * remove the inner white frame from the box selector Mon Jan 2 14:03:02 CET 2006 Andreas Röver * don't edit when outside the grid when the mouse is released Mon Jan 2 13:44:20 CET 2006 Andreas Röver * update 3d-cursor as soon as we are inside the square editor Mon Jan 2 13:28:44 CET 2006 Andreas Röver * exchange the color and shape parts in the shape tab Sun Jan 1 18:07:06 CET 2006 Andreas Röver * add new images to makefile Sun Jan 1 18:00:21 CET 2006 Andreas Röver * add images for transformation buttons and use them Fri Dec 30 13:45:49 CET 2005 Andreas Röver * changelog update Fri Dec 30 13:45:01 CET 2005 Andreas Röver * add the images to the imagefile so that they are included in distribution Fri Dec 30 13:22:32 CET 2005 Andreas Röver * first step in redesign of interface Thu Dec 29 17:10:16 CET 2005 Andreas Röver * edit mode cursor for 3D view Thu Dec 22 17:21:56 CET 2005 Andreas Röver * add line space display for the z axis slider in the grid editor Thu Dec 22 16:53:35 CET 2005 Andreas Röver * darker green color axis Thu Dec 22 16:39:35 CET 2005 Andreas Röver * fix stack drawing Wed Dec 21 21:51:00 CET 2005 Andreas Röver * have a shadow of the layer below visible on the square drawer, remove color white as the contrast is not high enough Wed Dec 21 21:32:36 CET 2005 Andreas Röver * mirrored drawing and whole column drawing in swaure editor, unused by now Wed Dec 21 20:54:03 CET 2005 Andreas Röver * buttons in button groups can now be selected, also end the group right away to avoid manual ending Wed Dec 21 20:49:56 CET 2005 Andreas Röver * start window size is now 800x600 and the tooltab is wider Wed Dec 21 20:48:02 CET 2005 Andreas Röver * fix that removing a color might invalidate the displayed color for the 3d view Wed Dec 21 20:47:38 CET 2005 Andreas Röver * some docfile updates Mon Dec 19 21:38:06 CET 2005 Andreas Röver * a new widget: buttonGroup this widget has a number of buttons of which at each time exactly one is pressed (like radiobutton) Mon Dec 19 21:37:29 CET 2005 Andreas Röver * use a thicker marker for selected blocks Fri Dec 16 13:07:08 CET 2005 Andreas Röver * fix scaling problem with edit color button Fri Dec 16 13:00:54 CET 2005 Andreas Röver * ensure valididy of color selected after removing one. Fix crash when deleting the last color and pressing del right again Thu Dec 15 18:14:00 CET 2005 Andreas Röver * puzzle is changed, when comment is saved Thu Dec 15 17:52:29 CET 2005 Andreas Röver * fix comment loading and enable GUI comment editing Thu Dec 8 17:31:55 CET 2005 Andreas Röver * remove the designer field from the puzzle, the comment can contain that information Thu Dec 8 17:31:30 CET 2005 Andreas Röver * remove another abbreviation Thu Dec 8 17:29:05 CET 2005 Andreas Röver * remove whitespace from lineends Wed Dec 7 21:42:36 CET 2005 Andreas Röver * check all possible close situations for changed puzzle up to now you only got a warning, when using quit but not when using the window manager "x", or when using Alt-F4, now you do. Wed Dec 7 21:37:39 CET 2005 Andreas Röver * remove 2 more abbreviations Wed Dec 7 21:35:55 CET 2005 Andreas Röver * remove abbreviations from activities Wed Dec 7 21:22:13 CET 2005 Andreas Röver * quit not red any longer Wed Dec 7 20:54:13 CET 2005 Andreas Röver * don't try to disassemble assemblies with only one piece Wed Dec 7 18:04:32 CET 2005 Andreas Röver * make group edit window resizable Wed Dec 7 18:02:22 CET 2005 Andreas Röver * make configuration window modal Tue Nov 29 11:24:02 CET 2005 Andreas Röver [_^M_] * use parameter from preview window for output Tue Nov 29 08:13:30 CET 2005 Andreas Röver [_^M_] * and another symmetry group Mon Nov 28 19:06:25 CET 2005 Andreas Röver * better tile size Mon Nov 28 17:50:27 CET 2005 Andreas Röver * use back puffer, as many GL implementations don't provige auxiliary buffers Mon Nov 28 17:49:45 CET 2005 Andreas Röver * windows requires explicit resize of window for layouted windows Sun Nov 27 21:34:24 CET 2005 Andreas Röver * start new development cycle Sun Nov 27 21:30:50 CET 2005 Andreas Röver * some more image exporting functionality Sat Nov 26 15:33:52 CET 2005 Andreas Röver * separate the voxel drawing from the gui part Now it can be reused for the image export. But this is only a first step as there seem to be some strange bug resulting in event getting queuesd up and the F3 key not always getting through Sat Nov 26 12:27:04 CET 2005 Andreas Röver * unix style line breaks Sat Nov 26 12:26:38 CET 2005 Andreas Röver * wider buttons Sat Nov 26 12:25:56 CET 2005 Andreas Röver * a few more options for export window Sat Nov 26 12:24:31 CET 2005 Andreas Röver * add libpng this library will be used to output the rendered images into png files Sat Nov 26 12:07:29 CET 2005 Andreas Röver * add the tile rendering library This library will be used to render the large size pictures for the image export Fri Nov 25 22:15:24 CET 2005 Andreas Röver * start work on Image Export Functionality Right now only a simple dialog with some of the possible options is shown and a new meny entry for testing purposes Fri Nov 25 22:14:52 CET 2005 Andreas Röver * disabiguate layouter function prototype Fri Nov 25 21:17:25 CET 2005 Andreas Röver * add a few GPL header to files Fri Nov 25 21:10:41 CET 2005 Andreas Röver * add first version of the layouter with this layouter its (hopefully) possible to quickly design even complex dialogs by leaving the concrete layout to the computer and only defining the relative playement of the different groups inside the window Fri Nov 25 17:03:50 CET 2005 Andreas Röver tagged 0.1.8b Thu Nov 24 18:25:31 CET 2005 Andreas Röver * release preparations Tue Nov 22 19:23:29 CET 2005 Andreas Röver * replace literal with correct define and solve a Bug found by Markus Tue Nov 22 19:06:33 CET 2005 Andreas Röver * missed an insance with the counters Sun Nov 20 17:09:10 CET 2005 Andreas Röver * start counting pieces and multipieces from one and not from 0 Mon Nov 14 19:42:30 CET 2005 Andreas Röver * use brackets insted of "=" for level moves Mon Nov 14 19:37:16 CET 2005 Andreas Röver * clean status bar when switching to solve tab Mon Nov 14 19:32:19 CET 2005 Andreas Röver * unify and nicify tooltips Mon Nov 14 19:17:31 CET 2005 Andreas Röver * fix scrollbar Problem in solve tab Mon Nov 14 19:14:59 CET 2005 Andreas Röver * correct spelling of Bill Cutler Sun Nov 13 15:47:17 CET 2005 Andreas Röver * remove FIXME comment, this is fixed Sun Nov 13 15:41:42 CET 2005 Andreas Röver * get rid of global variable ui the global variable has been a real design problem. Now without it we will be able to open several windows and copy information from one to the next and so on Sun Nov 13 11:57:39 CET 2005 Andreas Röver * add a chapter for future design possibilities Fri Nov 11 22:40:54 CET 2005 Andreas Röver tagged 0.1.8a Fri Nov 11 22:40:26 CET 2005 Andreas Röver * update to 0.1.8a Fri Nov 11 22:35:53 CET 2005 Andreas Röver * fix problem with assert window the source of the problem has been that when the assembly process asserted while already running it was not correclty reset which lead to an endless loop while waiting for the thread to finish now the thread is reset, also the interfice is updated Fri Nov 11 22:33:59 CET 2005 Andreas Röver * more whitespace Fri Nov 11 18:25:35 CET 2005 Andreas Röver * remove some whitespace Fri Nov 11 17:27:49 CET 2005 Andreas Röver * oops typo Wed Nov 9 21:28:04 CET 2005 Andreas Röver * put something into the README file Sat Nov 5 18:17:00 CET 2005 Andreas Röver tagged 0.1.8 Sat Nov 5 16:18:10 CET 2005 Andreas Röver * news and changelog updates Sat Nov 5 16:16:53 CET 2005 Andreas Röver * minimize pieces for now, before starting to solve Sat Nov 5 16:16:35 CET 2005 Andreas Röver * add the example into the distribution file Sun Oct 30 23:14:50 CET 2005 Andreas Röver * and 2 more Sun Oct 30 22:38:11 CET 2005 Andreas Röver * 2 more groups and bugfix in debugging code for symmetry checking Sun Oct 30 16:27:59 CET 2005 Andreas Röver * another example the designer kinly allowed me to bundle the file Sun Oct 30 15:03:10 CET 2005 Andreas Röver * yet another symmetry group Sun Oct 30 14:57:31 CET 2005 Andreas Röver * no newline option for burrTxt Sun Oct 30 14:15:10 CET 2005 Andreas Röver * quiet option for burrTxt Sun Oct 30 12:50:27 CET 2005 Andreas Röver * update comment Sun Oct 30 12:50:15 CET 2005 Andreas Röver * bugfix Wed Oct 26 21:52:24 CEST 2005 Andreas Röver * documentation update Wed Oct 26 21:31:31 CEST 2005 Andreas Röver * changelog and NEWS file update Wed Oct 26 21:31:03 CEST 2005 Andreas Röver * add some examples Tue Oct 25 18:56:02 CEST 2005 Andreas Röver * tab removal Tue Oct 25 18:14:34 CEST 2005 Andreas Röver * now we can also set the color only Tue Oct 25 17:05:19 CEST 2005 Andreas Röver * cleanup of grid editor now there is a button in the tool side bar that allows you to select what you want to do. Also the "Edit all Layers" button has been moved there. Also lots of cleanup in the square editor resulting from this Tue Oct 25 16:58:26 CEST 2005 Andreas Röver * redraw after toggeling Tue Oct 25 16:57:57 CEST 2005 Andreas Röver * use shortcut keys in the menu instead manual ones Tue Oct 25 16:50:21 CEST 2005 Andreas Röver * windows versions don't have __STRING Mon Oct 24 19:52:55 CEST 2005 Andreas Röver * use the character code for + and - instead of the key Mon Oct 24 16:47:42 CEST 2005 Andreas Röver * increase puzzle version and make corrections after loading old version file Mon Oct 24 16:46:52 CEST 2005 Andreas Röver * display a message when the placement browser is opened in intermediate assembling state Mon Oct 24 16:43:34 CEST 2005 Andreas Röver * spell my name right Sun Oct 23 19:57:16 CEST 2005 Andreas Röver * OSX specific parameter handling OSX passes a process id as the first parameter so we can not load that file and we skip opening files we should have a proper solution there and do something more appropriate Sun Oct 23 19:32:41 CEST 2005 Andreas Röver * gcc 4.0 fixes Sun Oct 23 17:36:31 CEST 2005 Andreas Röver * news and changelog updates Sun Oct 23 16:46:20 CEST 2005 Andreas Röver * documentation update (placement browser and group editor explained) Sun Oct 23 14:12:59 CEST 2005 Andreas Röver * no newlines for log lines Sun Oct 23 14:03:19 CEST 2005 Andreas Röver * another symmetry group Sun Oct 23 10:04:26 CEST 2005 Andreas Röver * remove some debug code Sat Oct 22 21:30:22 CEST 2005 Andreas Röver * remove some unused code Sat Oct 22 21:29:59 CEST 2005 Andreas Röver * die tab die Sat Oct 22 21:20:28 CEST 2005 Andreas Röver * new asserts that throw an exception instead this new scheme allows to catch after the lib produces an unsolvabale error. A window with some information is displayed and the program doesn't crash Sadly FLTK is by default compiled without exception support (what a crap) so the exceptions don't go through the callbacks and so the program still crashed on asserts in the GUI instead of saving the puzzle and shutting down Sat Oct 22 10:09:02 CEST 2005 Andreas Röver * include all documentation files in distribution Fri Oct 21 17:15:22 CEST 2005 Andreas Röver * make lines a bit thicker (for coordinate system and layer highlighting) Fri Oct 21 17:14:04 CEST 2005 Andreas Röver * improvements to groups editor - simplified code - only set change flag, if the user really does change something Fri Oct 21 17:01:40 CEST 2005 Andreas Röver * improvements for keyboard shortcuts - F2 now saves, F3 loads, F4 toggled 3D view - only toggle and +- layer when in shape tab Fri Oct 21 16:56:40 CEST 2005 Andreas Röver * improvements to placement browser - don't crash when 0 placements are there - speed improvement (only the delta is stepped through the matrix instead if starting fresh of each change - correctly handle empty result shape Fri Oct 21 16:49:44 CEST 2005 Andreas Röver * add another symmetry group, sigh Thu Oct 20 18:34:03 CEST 2005 Andreas Röver * show the currently worked on piece when reducing Thu Oct 20 18:22:52 CEST 2005 Andreas Röver * hotspot at origin is no longer necessary Thu Oct 20 18:22:15 CEST 2005 Andreas Röver * placement browser activation only possible when assembler is available Thu Oct 20 18:05:51 CEST 2005 Andreas Röver * save the hotspot, if it is not zero (we might need that some time in the future) Thu Oct 20 17:51:47 CEST 2005 Andreas Röver * the upper limit of the bounding box was not moved when the voxel space content was moved Thu Oct 20 17:51:18 CEST 2005 Andreas Röver * check that the hotspot is really in the origin when starting to solve a puzzle Tue Oct 18 18:27:31 CEST 2005 Andreas Röver * take the bounding box of pieces into consideration Tue Oct 18 18:04:20 CEST 2005 Andreas Röver * each transformation of a piece results in resetting the hotspot to 0 and removing solutions Tue Oct 18 17:31:58 CEST 2005 Andreas Röver * die tab, die Mon Oct 17 22:03:18 CEST 2005 Andreas Röver * use vectors for nodes and thus get rid of node counting Mon Oct 17 22:02:57 CEST 2005 Andreas Röver * + and - only work in shape view Mon Oct 17 22:02:37 CEST 2005 Andreas Röver * new and changelog updates Mon Oct 17 21:54:40 CEST 2005 Andreas Röver * new symmetry avoiding system Sat Oct 8 19:52:53 CEST 2005 Andreas Röver * subproblem creation and recursion moved into function Sat Oct 8 18:38:03 CEST 2005 Andreas Röver * the comefreom field of nodes in the disassembler are instatiated in the constructor Sat Oct 8 14:51:09 CEST 2005 Andreas Röver * add hotspot functionality a Hotspot is a point inside a voxel space that always stays at the same position reltvie to the shape defined inside the voxel space, so if you have the hotspot at some special corner and now flip rotate and shift the piece around inside the voxelspace the hotspot will stay at the same corner of the piece and move along with this corner What is that useful for? To rotate assemblies. because now it is possible to recalculate the orientation of a piece and calculate the new position of the hotspot independent of the concrete shape of the piece Mon Oct 3 13:52:12 CEST 2005 Andreas Röver * assembly rotation first fixes, more needs to be done Sun Oct 2 11:33:54 CEST 2005 Andreas Röver * some more updates to algorithms Thu Sep 29 17:50:27 CEST 2005 Andreas Röver * add function to movementcache to remove information concerning one shape Wed Sep 28 21:29:27 CEST 2005 Andreas Röver * describe some internals Tue Sep 27 20:39:50 CEST 2005 Andreas Röver * tons of typos Mon Sep 26 17:34:23 CEST 2005 Andreas Röver * some typos in news file Sun Sep 25 18:50:00 CEST 2005 Andreas Röver * update Documentation partly with Doc Sonnevelds suggestions Thu Sep 22 21:44:14 CEST 2005 Andreas Röver * merge pieceVoxel and voxel pieceVoxel_c is no longer required as we don't have the assembly voxel any longer whose existence has been the reason for a base voxel class and 2 specialized classes with different information per voxel Thu Sep 22 21:17:09 CEST 2005 Andreas Röver * first step to the new rotation avioding method Tue Sep 13 18:06:09 CEST 2005 Andreas Röver * some comments and a bugfix for symmetry avoidance Sat Sep 10 14:24:16 CEST 2005 Andreas Röver * add placement browser this is a window that lets you go through all the placements that each piece of the puzzle can have. This is mainly for debugging reasons, if you want to find out why a certain solution doesn't exist Wed Sep 7 17:19:07 CEST 2005 Andreas Röver * documentation updates Tue Sep 6 21:47:41 CEST 2005 Andreas Röver * Apple has the OpenGL files in another directory. Also remove an unnecessary include Tue Sep 6 20:26:38 CEST 2005 Andreas Röver * some more changelog updates Tue Sep 6 20:25:30 CEST 2005 Andreas Röver * hide marker whenever not needed Tue Sep 6 20:17:59 CEST 2005 Andreas Röver * fix some widget exchange issues Tue Sep 6 19:44:39 CEST 2005 Andreas Röver * toggle + and - key shortcut and also have the limits checked Tue Sep 6 19:40:51 CEST 2005 Andreas Röver * use a box instead of an output widget for the status line text or it will get the focus and collect keystrokes Tue Sep 6 19:39:52 CEST 2005 Andreas Röver * plus and minus change the layer to edit Tue Sep 6 19:37:44 CEST 2005 Andreas Röver * correct event handling functions we really do need to return 0 when we do not handle the event or else key shorcuts will not arrive Sat Sep 3 11:34:49 CEST 2005 Andreas Röver * remove assemblyVoxel_c class we don't really need this class any longer. Assenblies are saved in the assembly_c class that saves the position of the pieces. This class was only kept because I've been too laze to rewrite the print routines thats done now Thu Sep 1 18:25:51 CEST 2005 Andreas Röver * use the home directory (profile) on windows, too Thu Sep 1 18:21:25 CEST 2005 Andreas Röver * update documentation Wed Aug 31 21:53:15 CEST 2005 Andreas Röver * sort menu into submenu(es) and add first keyboard shortcut Wed Aug 31 21:32:03 CEST 2005 Andreas Röver * whitespace Wed Aug 31 21:31:48 CEST 2005 Andreas Röver * remove a long standing warning Wed Aug 31 21:31:26 CEST 2005 Andreas Röver * care for user changing the count in the group window Wed Aug 31 21:21:31 CEST 2005 Andreas Röver * the groups edit window doesn't nee to be global Wed Aug 31 21:15:58 CEST 2005 Andreas Röver * fix for wrong handling of grouping class + optimisation we can sadly not assert that the user will not call the grouping class after it has returned false, so make sure that we do noting but return false once that happened als we don't need to evaluate the 2nd part of the puzzle once the first part turned out to be not disassembable Wed Aug 31 20:41:46 CEST 2005 Andreas Röver * only add a group record when the group is not 0 Wed Aug 31 19:41:24 CEST 2005 Andreas Röver * updates of project files Wed Aug 31 19:37:25 CEST 2005 Andreas Röver * fix problem with "vanishing" bottom widget in shape editor, problem now: the middle separator may jump Wed Aug 31 17:34:08 CEST 2005 Andreas Röver * improvements for configuration dialog Wed Aug 31 17:22:39 CEST 2005 Andreas Röver * save windows position in config file Tue Aug 30 22:05:04 CEST 2005 Andreas Röver * get rid of 2 unused variables Tue Aug 30 22:00:57 CEST 2005 Andreas Röver * add configuration support for the moment a simple configuration, just 2 switches tooltips and the lightning in 3D mode. The configuration class also lacks the other data types except for bool, also the dialog needs some brush up, but it works for now... Mon Aug 29 18:40:19 CEST 2005 Andreas Röver * new constructor for buttons (with pointer) Mon Aug 29 18:39:43 CEST 2005 Andreas Röver * cleanup for grid editor event handling Mon Aug 29 18:39:15 CEST 2005 Andreas Röver * update about box to contain used libs and modules Mon Aug 29 18:36:22 CEST 2005 Andreas Röver * add GUI to edit groups properly Sun Aug 28 12:30:30 CEST 2005 Andreas Röver * make UserInterface into a derived window class and not a container for the window Sun Aug 28 12:20:57 CEST 2005 Andreas Röver * remove using namespace from include file Sun Aug 28 11:58:49 CEST 2005 Andreas Röver * updates to NEWS file Sun Aug 28 11:50:59 CEST 2005 Andreas Röver * the string for the text block list is 200 characters long Sun Aug 28 11:48:29 CEST 2005 Andreas Röver * add better grouping of pieces for disassembler now each (set of) piece(s) can belong to several groups and the disassembler will assign groups as it progresses with its task. As soon as it hits a not disassembable set of pieces it looks if they can be assigned groups so that they are all in the same group Wed Aug 24 16:48:22 CEST 2005 Andreas Röver * update to 3D-View Grid-View exchange, more stable Tue Aug 23 16:16:05 CEST 2005 Andreas Röver * first try at a possibility to toggle the grid and 3D view in the shape tab so that the grid has more space Tue Aug 23 16:07:07 CEST 2005 Andreas Röver * minimize on empty voxel spaces caused a crash Tue Aug 23 16:05:24 CEST 2005 Andreas Röver * turn the slider with the square editor around so that is behaves more intuitive Mon Aug 22 21:24:14 CEST 2005 Andreas Röver * now we also don't need to draw the faces joining to variable cubes Sun Aug 21 21:48:28 CEST 2005 Andreas Röver * bigger steps for solution animations Sun Aug 21 21:31:08 CEST 2005 Andreas Röver * reformat cursor code Sun Aug 21 21:30:21 CEST 2005 Andreas Röver * variable cubes are no longer with smaller cube but with a cube with a black square on each face Sun Aug 21 15:18:47 CEST 2005 Andreas Röver * add some kind of cursor to the 3D view Sat Aug 20 21:49:09 CEST 2005 Andreas Röver * show both the sum of moves and all the levels of the puzzle above the moves slider Sat Aug 20 21:11:09 CEST 2005 Andreas Röver * sort found solutions by disassembly complexity Sat Aug 20 20:57:25 CEST 2005 Andreas Röver * the solution selector now takes the focus, so you can use the keys to select solutions Sat Aug 20 20:49:58 CEST 2005 Andreas Röver * When you dragged the tab so that the 3D view was 0 width the program crashed, fixed now Sat Aug 20 20:43:58 CEST 2005 Andreas Röver * wrong assert causing abborts when colors were deleted Sat Aug 20 20:43:35 CEST 2005 Andreas Röver * remove some debug prints left over Fri Aug 19 16:55:04 CEST 2005 Andreas Röver tagged 0.1.7 Fri Aug 19 16:54:06 CEST 2005 Andreas Röver * last release preparations Fri Aug 19 16:51:17 CEST 2005 Andreas Röver * more marker functions from the header into the c-file Fri Aug 19 16:38:19 CEST 2005 Andreas Röver * fix bug that made the program not save the result shape the number of shapes in the problem has nothing to do with the number of shapes in the puzzle Fri Aug 19 16:37:26 CEST 2005 Andreas Röver * some more updates to reduce and also a version update for assembler because of reduce Thu Aug 18 21:48:58 CEST 2005 Andreas Röver * more preparations for 0.1.7 Thu Aug 18 21:37:01 CEST 2005 Andreas Röver * enable reducer but in a very simple form Thu Aug 18 17:19:01 CEST 2005 Andreas Röver * split of the 2nd part of bills algorithm and optimize it further Thu Aug 18 16:54:34 CEST 2005 Andreas Röver * rename node4_c to node0_c as the disassembler has been renamed, too Thu Aug 18 16:48:37 CEST 2005 Andreas Röver * add maximum pieces parameter to checkmovement function this parameter will com in handy once I update the movement search function to first try to do simple moves and then more complex ones Thu Aug 18 16:42:26 CEST 2005 Andreas Röver * remove the inverse array again, its not needed Thu Aug 18 16:36:59 CEST 2005 Andreas Röver * comment the movement cache class Thu Aug 18 16:36:09 CEST 2005 Andreas Röver * some comment updates and cleanup Thu Aug 18 16:32:40 CEST 2005 Andreas Röver * optimize the 2nd part of bills algorithm as the again value only counts for each direction we do now each direction alone one after another and not together Thu Aug 18 16:32:07 CEST 2005 Andreas Röver * remove some unused functions from disassembly node Thu Aug 18 16:30:06 CEST 2005 Andreas Röver * handle more than one piece at the leafs of the disassm trees with the new group feature the ends of the disassm trees can now contain more than one piece, so we need to use a loop at the tree end and place all the pieces Thu Aug 18 16:28:06 CEST 2005 Andreas Röver * remove unused variable assembly from object disaasmtomoves this variable is not needed any longer because the positions of the pieces are absolute Wed Aug 17 22:06:35 CEST 2005 Andreas Röver * rename disassembler_4 to disassembler_0 Wed Aug 17 21:55:48 CEST 2005 Andreas Röver * remove all the old disassemblers Wed Aug 17 21:46:17 CEST 2005 Andreas Röver * improve disassembler_4 so that it now uses a global movement calculation cache spee should now be on par with puzzlesolver3d even for easy living Sun Aug 14 12:17:19 CEST 2005 Andreas Röver * create a placement class that represents the position of a piece Sun Aug 14 09:52:21 CEST 2005 Andreas Röver * redesign disassembler interface so that we can reuse the same object multiple times this makes is possible to use the movement cache more than once by just keeping the object and the appended movement cache. This will make is possible (once the movement cache can cope with transformations to reuse the cache from older assemblies Sat Aug 13 19:38:39 CEST 2005 Andreas Röver * document the new edit modes and piece groups Sat Aug 13 16:06:52 CEST 2005 Andreas Röver * improve editing possibilities editing now always fills rectangles instead of single cubes a new button alows to toggle between editing all layers and only the current one Sat Aug 13 14:14:10 CEST 2005 Andreas Röver * avoid segfault on quit Sat Aug 13 14:05:49 CEST 2005 Andreas Röver * don't make inside holy for inported puzzles Sat Aug 13 14:04:38 CEST 2005 Andreas Röver * bugfix for pressing cancel in inport window Thu Aug 11 21:51:27 CEST 2005 Andreas Röver * preparation for release 0.1.7 Thu Aug 11 21:45:01 CEST 2005 Andreas Röver * remove warnings (signed unsigned comparisons) Thu Aug 11 21:17:53 CEST 2005 Andreas Röver * include an inverse transformation array and replace the number of transformations with a constant Thu Aug 11 19:26:17 CEST 2005 Andreas Röver * add transformation to the node. This might enable us later on to rotate pieces Thu Aug 11 18:24:23 CEST 2005 Andreas Röver * add an import function for puzzle solver files Tue Aug 9 18:11:08 CEST 2005 Andreas Röver * move the node definition into the disassembler files so that each disassembler can have its own this starts to get necessary because we will need to have a different node for the 4th disassembler because it may get rotations included and so it needs a 4th field specifying the rotation Tue Aug 9 17:20:22 CEST 2005 Andreas Röver * fix for voxel drawing besides variable voxels Mon Aug 8 21:48:23 CEST 2005 Andreas Röver * problems may not yet have a result when they are saved Mon Aug 8 21:03:30 CEST 2005 Andreas Röver * burr grower can select the problem to work with Mon Aug 8 20:58:59 CEST 2005 Andreas Röver * implement piece groups This allows you to put piece into groups that don't need to be taken apart to solve the disassembly of the puzzle. This is required for example for puzzles like "cube in cage" where the cage consists of 3 movable pieces that can not be taken apart. The gui currently alows you to increase the group number. Group number 0 is special, it means that the piece doesn't belong to any group at all and must be single in the disassembled puzzle Fri Aug 5 12:30:18 CEST 2005 Andreas Röver * add a function to calculate the inverse transformation Thu Aug 4 09:47:25 CEST 2005 Andreas Röver * get the burr Grower working again Thu Aug 4 09:46:53 CEST 2005 Andreas Röver * problems are NOT editable, when solved Thu Aug 4 09:46:36 CEST 2005 Andreas Röver * add paragraph about the errors in the text Wed Jul 13 20:08:49 CEST 2005 Andreas Röver tagged 0.1.6 Wed Jul 13 20:07:57 CEST 2005 Andreas Röver * release 0.1.6 preparations Wed Jul 13 20:06:26 CEST 2005 Andreas Röver * for wrong time display problem sometime the displayed time war way to big this was probably because the time was asked bevore the thread could initialize it, so do this bevore the thread started Wed Jul 13 19:57:59 CEST 2005 Andreas Röver * add pictures for documentation Wed Jul 13 19:54:18 CEST 2005 Andreas Röver * update solution display after pressing start Wed Jul 13 19:41:50 CEST 2005 Andreas Röver * cleanup and lots of comments Wed Jul 13 19:41:00 CEST 2005 Andreas Röver * fix for problem selecting solution tab with empty gui Wed Jul 13 19:35:33 CEST 2005 Andreas Röver * bugfix and better time output Tue Jul 12 19:37:37 CEST 2005 Andreas Röver * documentation update Tue Jul 12 18:30:52 CEST 2005 Andreas Röver * some more asserts removed from load code, also some more consistency checks Tue Jul 12 17:29:29 CEST 2005 Andreas Röver * use exceptions for load errors instead of asserts. Now the user gets an error message when loading fails Tue Jul 12 16:41:02 CEST 2005 Andreas Röver * error message when the thread could not be started Tue Jul 12 16:31:17 CEST 2005 Andreas Röver * fix for win 9x. They do require a handle pointer for the thread creation Mon Jul 11 22:10:05 CEST 2005 Andreas Röver * enable the time estimation, add some asserts and initialize some values that should always have been Mon Jul 11 21:10:55 CEST 2005 Andreas Röver * remove the interations display Mon Jul 11 21:07:06 CEST 2005 Andreas Röver * enable "just count" switch Mon Jul 11 16:59:42 CEST 2005 Andreas Röver * we can not display problem info, when the given problem is not valid Mon Jul 11 16:58:42 CEST 2005 Andreas Röver * we now need to update when the tab is toggled, as we only update the visible widgets Mon Jul 11 16:58:27 CEST 2005 Andreas Röver * documentation updates Sun Jul 10 19:33:52 CEST 2005 Andreas Röver * add button to change a color Sun Jul 10 18:41:34 CEST 2005 Andreas Röver tagged 0.1.5 Sun Jul 10 18:41:10 CEST 2005 Andreas Röver * relese 0.1.5 preparations Sun Jul 10 18:40:02 CEST 2005 Andreas Röver * some gcc 4 fixes Sun Jul 10 18:30:04 CEST 2005 Andreas Röver * sort widged updating by tab and only update the pieces that are in the current tab Sun Jul 10 17:59:32 CEST 2005 Andreas Röver * only redraw the tab, because only widgets in the tab are updated Sun Jul 10 17:56:53 CEST 2005 Andreas Röver * merge updateSolutionStats and updateInterface Sun Jul 10 17:53:30 CEST 2005 Andreas Röver * oops, this is the right way to check the piece shapes for variable voxels Sun Jul 10 07:48:14 CEST 2005 Andreas Röver * stop pressing while in preparation caused segfault because the assembler was not yet set in the puzzle struct Sun Jul 10 07:47:24 CEST 2005 Andreas Röver * check for variable cubes in pieces and error out, also errors that mention one piece jump to that piece Sat Jul 9 14:03:10 CEST 2005 Andreas Röver * some more status line updates Sat Jul 9 14:02:51 CEST 2005 Andreas Röver * uninitialised pointer Sat Jul 9 09:27:39 CEST 2005 Andreas Röver * update interface when pressing new puzzle Fri Jul 8 21:47:52 CEST 2005 Andreas Röver * plug some memory leaks Fri Jul 8 20:29:16 CEST 2005 Andreas Röver * the thread has also stopped on error and not only in pause and finished state Fri Jul 8 20:29:03 CEST 2005 Andreas Röver * valgrind fixes Fri Jul 8 20:28:49 CEST 2005 Andreas Röver * whitespace Fri Jul 8 20:28:18 CEST 2005 Andreas Röver * remove solutions when editing the puzzle Fri Jul 8 20:27:41 CEST 2005 Andreas Röver * remove some cruft Thu Jul 7 21:26:58 CEST 2005 Andreas Röver * disable all dangerous editing while solving is in progress Thu Jul 7 17:18:58 CEST 2005 Andreas Röver * whitespace Thu Jul 7 17:17:16 CEST 2005 Andreas Röver * add a attribute to the assembler state to make incompatible changes possible, show error message when restoring failed Thu Jul 7 17:08:43 CEST 2005 Andreas Röver * disable voxel edit tools, when there is nothing to edit Wed Jul 6 21:04:06 CEST 2005 Andreas Röver tagged 0.1.4 Wed Jul 6 18:27:25 CEST 2005 Andreas Röver * move assembky callback functions into library Wed Jul 6 18:04:24 CEST 2005 Andreas Röver * changelog and NEWS update Wed Jul 6 18:02:56 CEST 2005 Andreas Röver * populate the status line with some information Wed Jul 6 17:31:25 CEST 2005 Andreas Röver * dont active solution when not in solve tab Wed Jul 6 17:24:24 CEST 2005 Andreas Röver * remove some debug prints Wed Jul 6 17:05:30 CEST 2005 Andreas Röver * version 0.1.4 update Wed Jul 6 17:04:45 CEST 2005 Andreas Röver * a bit more agressive reduce, let's just hope that this is not too much Wed Jul 6 17:04:31 CEST 2005 Andreas Röver * valgrind fix Wed Jul 6 17:03:45 CEST 2005 Andreas Röver * bugfixes for the assembly state saving Tue Jul 5 20:38:13 CEST 2005 Andreas Röver * valgrind uninitialised memory warnings Tue Jul 5 17:57:56 CEST 2005 Andreas Röver * implement saving of the current solving state Mon Jul 4 21:41:32 CEST 2005 Andreas Röver * add tooltip for color toggle in the status line Mon Jul 4 20:41:51 CEST 2005 Andreas Röver * don't try as hard to reduce, remove the switch again from GUI Mon Jul 4 20:26:44 CEST 2005 Andreas Röver * reintroduce all disassemblers and have a switch in burrTxt to select Mon Jul 4 20:10:36 CEST 2005 Andreas Röver * use the new disassembler in the GUI Sun Jul 3 12:49:17 CEST 2005 Andreas Röver * fix memory leaks and inconsisten new [] delete [] calls Sun Jul 3 12:47:19 CEST 2005 Andreas Röver * add a new disassembler this diassembler uses a cache to store the movement possibilities for each piece pair and relative position of this pair. The cache is then later on used to faster fill the matrix. This algorithm could be improved by keeping the cache over the period of solving one puzzle. This is escpecially useful when the puzzle has many assemblies (like Easy living) This algorithm speeds up complex puzzles like Pelikan Burr quite a bit (only 50% time left) but slows down puzzles with many simple assemblies as the cache has to be rebuild each time. Sat Jul 2 20:47:25 CEST 2005 Andreas Röver * the rotation function can not rotate by 90, 180 and 270 degree in one step Sat Jul 2 20:47:03 CEST 2005 Andreas Röver * bugfix Sat Jul 2 20:45:47 CEST 2005 Andreas Röver * use the bounding boxes of the voxel space to calculate the bounds for the disassembler Sat Jul 2 20:09:48 CEST 2005 Andreas Röver * remove the depth fields from the disassembler they didn't bring enough for the complexity Sat Jul 2 20:05:54 CEST 2005 Andreas Röver * voxel space creation speedup (huge speedup) Sat Jul 2 17:09:44 CEST 2005 Andreas Röver * missed the gzstream files, they should have been ther for a long time already Wed Jun 29 06:38:48 CEST 2005 Andreas Röver * remove the visual c files as they don't work anyway and mingw workd out of the box Tue Jun 28 19:47:12 CEST 2005 Andreas Röver * correctly bail out on error Tue Jun 28 16:31:52 CEST 2005 Andreas Röver * add the missing lines at the edges, don't draw edges at color contrains changes Mon Jun 27 21:40:34 CEST 2005 Andreas Röver * add new status bar at the bottom of window and connect everything Mon Jun 27 21:39:22 CEST 2005 Andreas Röver * add widget for status line Mon Jun 27 21:38:15 CEST 2005 Andreas Röver * enable coloration of cubes by constraint color Mon Jun 27 17:07:46 CEST 2005 Andreas Röver * correction for separator text size calculation Mon Jun 27 17:07:29 CEST 2005 Andreas Röver * add web adress to about dialog Mon Jun 27 17:07:01 CEST 2005 Andreas Röver * correct colorConstraint drawing under windows Sun Jun 26 21:53:22 CEST 2005 Andreas Röver tagged 0.1.3 Sun Jun 26 21:52:55 CEST 2005 Andreas Röver * use thing up boxes for buttons Sat Jun 25 12:27:47 CEST 2005 Andreas Röver * update documentation Sat Jun 25 12:27:15 CEST 2005 Andreas Röver * update changelog Sat Jun 25 11:19:59 CEST 2005 Andreas Röver * reenable the reduce switch ... for now. I really do need to find a reduce function that is always fast... Sat Jun 25 11:02:28 CEST 2005 Andreas Röver * enable the stopping while in preparation you can now press the stop button, while the asdsembler is preparing it will finish the preparation and then return to the user Sat Jun 25 10:44:48 CEST 2005 Andreas Röver * correct bounding box comparison Sat Jun 25 10:35:18 CEST 2005 Andreas Röver * use bounding box for piece fitting test -> speedup Sat Jun 25 10:34:48 CEST 2005 Andreas Röver * don't activate solutions on color selection Sat Jun 25 10:00:11 CEST 2005 Andreas Röver * add xml flags to library compilation Sat Jun 25 09:55:26 CEST 2005 Andreas Röver * select shape on piece click the right shape get's now selected when you click at one of the pieces in the piece+counter view at the bottom of the problem tab. This improves usability quite a bit Fri Jun 24 21:34:26 CEST 2005 Andreas Röver * add about box Fri Jun 24 21:28:07 CEST 2005 Andreas Röver * simplify message call Fri Jun 24 21:14:12 CEST 2005 Andreas Röver * new version Fri Jun 24 21:12:24 CEST 2005 Andreas Röver * line whitespace Fri Jun 24 21:10:06 CEST 2005 Andreas Röver * problem renaming and activation of the new created problems after the creation Fri Jun 24 20:50:13 CEST 2005 Andreas Röver * interface update function Thu Jun 23 21:35:04 CEST 2005 Andreas Röver * get not fitting error messages working Thu Jun 23 21:19:24 CEST 2005 Andreas Röver * set z layer to 0 on new shape Thu Jun 23 21:11:29 CEST 2005 Andreas Röver * new comparison function used to compare voxel space contents within bounding box this new functionality is used when comparing rotations as the old function wouldn't work with not minimized voxel spaces Thu Jun 23 19:31:11 CEST 2005 Andreas Röver * better error interface in the library, use this interface. Burrgui now has message boxes on errors Thu Jun 23 17:10:58 CEST 2005 Andreas Röver * save as compresses now too, also check for extension Wed Jun 22 18:08:14 CEST 2005 Andreas Röver * deleting the last piece resulted in endless loop Wed Jun 22 17:56:43 CEST 2005 Andreas Röver * update, when shapes are deleted Wed Jun 22 17:14:24 CEST 2005 Andreas Röver * get rid of the signed <-> unsigned comparisons Wed Jun 22 17:05:21 CEST 2005 Andreas Röver * when the size was very small the subtraction would overflow and result in a large grid Tue Jun 21 20:58:31 CEST 2005 Andreas Röver tagged 0.1.2 Tue Jun 21 20:20:58 CEST 2005 Andreas Röver * corrections for mingw Tue Jun 21 20:11:42 CEST 2005 Andreas Röver * show the selected shape in the upper right corner Tue Jun 21 19:53:51 CEST 2005 Andreas Röver * add white as color Tue Jun 21 19:53:27 CEST 2005 Andreas Röver * update 3d-view on edit Tue Jun 21 19:45:05 CEST 2005 Andreas Röver * bugfixes: crash when number of pieces was changed, update screen when shape delete Tue Jun 21 18:51:20 CEST 2005 Andreas Röver * consistency between slider and block list the problem is that the size of the block list is only known after is was drawn, so we need to draw the slider after the block list has been drawn and the slider had been updated Tue Jun 21 18:01:05 CEST 2005 Andreas Röver * bugfix for arcball. When nothing was shown at the start and you dragged the mouse the transformation got screwed up resulting in nothing shown Tue Jun 21 17:14:59 CEST 2005 Andreas Röver * wireframe improvements and fade out now includes the black edges Mon Jun 20 21:56:24 CEST 2005 Andreas Röver * next release Mon Jun 20 21:55:44 CEST 2005 Andreas Röver * fix blocksize for piece visibility Mon Jun 20 21:52:21 CEST 2005 Andreas Röver * check for valid values when setting up the 3d views Mon Jun 20 21:51:23 CEST 2005 Andreas Röver * more const correctness Mon Jun 20 21:18:39 CEST 2005 Andreas Röver * fix asserts on "new" Mon Jun 20 16:46:13 CEST 2005 Andreas Röver * don't skip when using the zoom slider for the first time Mon Jun 20 16:43:55 CEST 2005 Andreas Röver * windows rectangles set the draw color Sun Jun 19 21:43:46 CEST 2005 Andreas Röver tagged 0.1.1 Sun Jun 19 21:43:26 CEST 2005 Andreas Röver * next release Sun Jun 19 21:02:08 CEST 2005 Andreas Röver * a small optimisation, don't need to do anything, when piece is transparent Sun Jun 19 20:45:08 CEST 2005 Andreas Röver * squash warning Sun Jun 19 20:44:26 CEST 2005 Andreas Röver * activate piece on load so that there is no empty piece on load of a file Sun Jun 19 20:38:53 CEST 2005 Andreas Röver * add header, where missing Sun Jun 19 20:35:24 CEST 2005 Andreas Röver * cleanup in arcball files (mainly linebreaks) Sun Jun 19 20:33:23 CEST 2005 Andreas Röver * use exceptions instead of asserts for loading Sun Jun 19 19:36:00 CEST 2005 Andreas Röver * enable visibility toggling Sun Jun 19 17:31:57 CEST 2005 Andreas Röver * correct centering of result and cooredinate system for piece view Sun Jun 19 17:25:08 CEST 2005 Andreas Röver * update to the voxel view class the new voxel view class uses multiple voxel spaces to view the complete result instead of one, this will be more flexible for the future: (color constraints in results) I also use the new functionality with the problem viewer right now Sun Jun 19 17:24:30 CEST 2005 Andreas Röver * some small updates (const correctnes and a helper function) Sun Jun 19 08:41:12 CEST 2005 Andreas Röver * misc fixes - remove debug output in lib - reinstanciate display update timer when solving, without it the GUI uses up too much CPU time - fix some crashes and problems Sat Jun 18 19:22:19 CEST 2005 Andreas Röver * avoid bounding box recalculation Sat Jun 18 19:20:02 CEST 2005 Andreas Röver * don't make a copy of the puzzle, this is not needed any longer this was necessary because the old functions required minimzed pices, now this is not necessary any longer Sat Jun 18 19:19:06 CEST 2005 Andreas Röver * use gzipped output file Sat Jun 18 15:03:10 CEST 2005 Andreas Röver * optimize the update of the bounding box when transforming (rot and mirror) Sat Jun 18 14:13:51 CEST 2005 Andreas Röver * use the bounding box for the preparation Sat Jun 18 14:02:01 CEST 2005 Andreas Röver * add an internal bounding box to the voxel space Sat Jun 18 13:15:36 CEST 2005 Andreas Röver * use assembly in puzzle solutions instead of the assembly voxel space this saves a bit of space in the xml files, the usage of the assembly will also further go down into the different tasks then now, e.g the voxel space shoule really use the assembly instead of the current assemblyVoxel space. Sat Jun 18 12:08:49 CEST 2005 Andreas Röver * const correctnes Sat Jun 18 11:24:23 CEST 2005 Andreas Röver * remove some warnings Sat Jun 18 09:53:11 CEST 2005 Andreas Röver * format changes Sat Jun 18 09:42:52 CEST 2005 Andreas Röver * correctly use the new assebly class Mon May 9 21:59:33 CEST 2005 Andreas Röver * better boxes :-) Mon May 9 21:59:10 CEST 2005 Andreas Röver * typo Mon Mar 28 20:08:05 CEST 2005 Andreas Röver * bugfixes Mon Mar 28 16:33:09 CEST 2005 Andreas Röver * improvements for printing Mon Mar 28 16:32:32 CEST 2005 Andreas Röver * correctly load in burrText Mon Mar 28 16:08:50 CEST 2005 Andreas Röver * const correctnes Mon Mar 28 16:08:26 CEST 2005 Andreas Röver * bugfixes in assermby_c class Mon Mar 28 16:06:53 CEST 2005 Andreas Röver * readd printing function in an extra external module Mon Mar 28 14:24:49 CEST 2005 Andreas Röver * remove some more warnings Mon Mar 28 14:22:51 CEST 2005 Andreas Röver * step 2 of applying assembly result changes Thu Mar 24 22:24:12 CET 2005 Andreas Röver * add assembly class to contain assembled puzzle Sun Mar 20 21:15:25 CET 2005 Andreas Röver * better commenting, some cleanup Sun Mar 20 18:37:16 CET 2005 Andreas Röver * more warnings removed, move position fields out of main window in DisassmToMoves class Wed Mar 9 21:50:17 CET 2005 Andreas Röver * remove Warnings part 1 Wed Mar 9 21:29:28 CET 2005 Andreas Röver * introduce new interface for voxel viewer Mon Mar 7 21:05:30 CET 2005 Andreas Röver tagged 0.1.0 Mon Mar 7 21:04:35 CET 2005 Andreas Röver * correction for error throwing so that is loads again Sun Mar 6 21:51:27 CET 2005 Andreas Röver * redesign part III Tue Mar 1 21:44:59 CET 2005 Andreas Röver * Mayor reordering Part II Next part of the reordering, still not much working but we are getting there. The programm now can again solve puzzles and show the solutions Mon Feb 28 21:19:51 CET 2005 Andreas Röver * Major Restructuring This patch does three major things: - restucture the puzzle oranisation into using problems with each problem using shapes from a puzzle wide defined list - use XML to save the puzzles - allow for color constraints Sat Jan 1 20:56:47 CET 2005 Andreas Röver * don't crash when mous goes below edit area in square editor Sat Jan 1 20:46:19 CET 2005 Andreas Röver * allow multiple result shapes part II (small fix) Sat Jan 1 20:45:02 CET 2005 Andreas Röver * add saving to XML Sat Jan 1 16:57:04 CET 2005 Andreas Röver * add color constraints to library (still unused in gui and not saved) Sat Jan 1 16:11:04 CET 2005 Andreas Röver * allow for multiple result shapes Sat Jan 1 15:55:16 CET 2005 Andreas Röver * some cleanup Sat Jan 1 13:13:36 CET 2005 Andreas Röver * specialize the voxel class the voxel class now has 2 subclasses one for each of the uses the assemlbyVoxel class is for assembled puzzles with a special value for empty voxels and the right numbers for the pieces the pieceVoxel contains the state and NEW also a field called color that will be used to constrain piece placement Sat Jan 1 12:39:23 CET 2005 Andreas Röver * add frontend for cube puzzles Sat Jan 1 11:36:33 CET 2005 Andreas Röver * const correctness Fri Dec 31 10:09:54 CET 2004 Andreas Röver * update copyright header Sat Dec 4 21:30:28 CET 2004 Andreas Röver * Some documentation restructuring and additions Sat Dec 4 16:49:40 CET 2004 Andreas Röver * misc formatting Sat Dec 4 16:48:38 CET 2004 Andreas Röver * Factor out file loading Sat Dec 4 16:42:40 CET 2004 Andreas Röver * Evaluate command line a bit and load a file if given Sat Dec 4 16:33:22 CET 2004 Andreas Röver * remove tabs from Makefile.am Sat Dec 4 16:32:17 CET 2004 Andreas Röver * Move Window Widget Groups into their own file to improve compilation seed Sat Dec 4 16:17:56 CET 2004 Andreas Röver * Split dancing link assembler from matrix creation This should allow to have serveral differen Puzzle piece types. For each type you can write a new frontend to assembler_0_c that handles the creation of the matrix and the generation of the solution currently only one frontend, for cube spaces, is defined Fri Dec 3 21:20:30 CET 2004 roever@users.sf.net * better bootstrap script Fri Dec 3 21:03:04 CET 2004 roever@users.sf.net * add doc to distribution Fri Dec 3 21:00:19 CET 2004 roever@users.sf.net * Initial revision