Skip to content

Visualization tool for the most popular pathfinding and maze generation algorithms.

Notifications You must be signed in to change notification settings

rebmanop/Pathfinding-Visualizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pathfinding-Visualizer

This is an image

Description

Visualization of this kind helps to understand the general idea behind every implemented algorithm. The application is written mainly for educational purposes: to learn more about pathfinding, maze generation, and to challenge my software development skills.

Implemented pathfinding algorithms:

  • A*
  • Dijkstra's
  • Depth-first search
  • Breadth-first search
  • Greedy best-first search
  • Bidirectional breadth-first search

Implemented maze generation algorithms:

  • Recursive division
  • Randomized depth-first search (backtracker)
  • Spiral
  • Simple stair pattern

Implemented features:

  • Adjustable animation speed
  • Draggable route points
  • Real time revisualization
  • Intermediate route point (parcel)
  • Manual creation and removal of walls

All or some of the lists are likely to be updated at some point in the future.

Demo

Dijkstra's algorithm & recursive division maze

This is a gif

Bidirectional bfs & intermidiate point (parcel)

This is a gif

A* algorithm & "real time" revisualization feature

This is a gif

Dependencies

  • pygame
  • strenum
  • pygame_gui

How to use

  1. Download or clone this repository.
  2. Extract to some location.
  3. Pip all dependencies.
  4. Run main.py

About

Visualization tool for the most popular pathfinding and maze generation algorithms.

Topics

Resources

Stars

Watchers

Forks

Languages