Skip to content

Uses PyQt5 to paint the mazes. The user can make a maze and then watch as it is solved. Uses brute force threading to solve the maze. Randomly generated mazes are a future addition.

License

Notifications You must be signed in to change notification settings

JacksonElia/Mazer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mazer

Uses PyQt5 to paint the mazes. The user can make a maze and then watch as it is solved. Uses brute force threading to solve the maze. Randomly generated mazes are a future addition.

How it works

The maze is solved by brute force. Essentially, if there is a pathway that it can go into, it does it. image

Each time it branches off into another pathway, it makes a new thread for that pathway. Each thread has a list with its complete history, so when the end is found the shortest path from start to end can be found. image

How to edit a maze

Clicking the edit button changes the gui slightly to: image When the user is editing, they can place the start and end of the maze, add or remove walls, and change the height and width of the maze.

Use

You're free to use this code as long as you credit me.

MIT © Traptricker

About

Uses PyQt5 to paint the mazes. The user can make a maze and then watch as it is solved. Uses brute force threading to solve the maze. Randomly generated mazes are a future addition.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages