Skip to content

A sliding puzzle implementation using Python Tkinter.

Notifications You must be signed in to change notification settings

tfpf/sliding_puzzle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Sliding Puzzle

A sliding puzzle implementation using Python Tkinter. To play, first install the following Python packages.

  • Tkinter (for GUI processing)
  • OpenCV (to read the puzzle image)
  • NumPy (required by OpenCV)

Then download/clone this repository. Finally, open a terminal to the download/clone location and run

python3 main.py 3 crysis2.png

and enjoy! This will create a 3-by-3 sliding puzzle (i.e. an 8-puzzle) using the image file 'crysis2.png'.

If you want to use a different image (say, 'myimage.jpg'), delete the cached image files and specify your new image on the command line

rm img*.png                            # delete cache
python3 main.py 3 /path/to/myimage.jpg # run with your image

and it should work. Just make sure that 'myimage.jpg' is a square image. Otherwise, it may get visibly distorted.

To play at higher difficulty levels, just change the number on the command line. For instance,

rm img*.png                            # delete cache
python3 main.py 4 /path/to/myimage.jpg # run with your image

will create a 4-by-4 sliding puzzle (i.e. a 15-puzzle), whereas

rm img*.png                            # delete cache
python3 main.py 6 /path/to/myimage.jpg # run with your image

will create a 6-by-6 sliding puzzle (i.e. a 35-puzzle).

Deleting the cache is necessary whenever you want to change either the difficulty level or the puzzle image.

Releases

No releases published

Packages

No packages published

Languages