The squaredance package will show you simple perfect squared squares 
using XVideo. Most parts of it are taken form Open Source (xorg, tvtime).
Only a few things have been added by asi AT equicon.de.

There is no fancy GUI but just the things needed to enjoy the show.
But there are some useful utilities to deal with lists of Bouwkamp Codes
(suitable for both the table representation and the traditional form).



The package contains the following source files: 

barlistuser.hpp ......... just a small C++ interface module

bars.[ch]pp ............. some code dealing with horizontal "bars", used
                          to convert Bouwkamp Codes to drawable information

bc2latex.cpp ............ a filter to convert Bouwkamp Codes to LaTeX pictures

bc2mp.cpp ............... a filter to convert Bouwkamp Codes to Metapost

bcsize.[ch]pp ........... tiny module to determine the square size

findcpss.cpp ............ a filter to select CPSS's from a BC list
                          - not needed to build the squaredance executable

findcross.cpp ........... a filter to select squares containing a cross
                          - not needed to build the squaredance executable

findflips.c ............. a filter to extract isomers
                          - not needed to build the squaredance executable

findnice.c .............. another short C program to search for "nice" SPSS or CPSS 
                          - not needed to build the squaredance executable

histogram.c ............. a short C program to analize element size distributions
                          - not needed to build the squaredance executable

main.cpp ................ main squaredance module - look at this first

makefile ................ the package makefile to be used by make(1)

myxev.c ................. a modified xev.c from the Xorg sources

squaredance.[ch]pp ...... the squaredance core machinery using xvideoshow.*

xvideoshow.[ch]pp ....... XVideo code taken from the tvtime source RPM



Some datafiles containing lines with Bouwkamp Codes have been included:

21.txt .................. Duijvestijn's order 21 SPSS found in 1978
crosses.txt ............. SPSS containing crosses
nice1.txt ............... "nice" SPSS dissections (no tiny elements)
nice2.txt ............... "nice" SPSS dissections (no very similar elements)
quadflip1.txt ........... a set of 4 dissection isomers
quadflip2.txt ........... another set of 4 dissection isomers
tripleflips.txt ......... some sets of triple dissections isomers

There is a download script named mklist you may use to download 
many SPSS and CPSS dissections data from www.squaring.net.
By default, the squaredance executable uses spss.txt and a delay of 1000ms
between frames. Please refer to main.cpp for supported options and/or
just try

./squaredance --help

Enjoy it, but do not fight against minor strange effects. (varying line width,
interfering colors etc.)

