A JavaFX application to visualize path finding in a grid system. The program finds the path from start to destination
given its coordinates as input with a chosen path algorithm. The algorithm is chosen by selection in the drop-down menu
and obstacles can be drawn by dragging the mouse on the tiles. Mazes can be generated, which is done through a randomized DFS algorithm.
Blue tiles are the visited nodes, Dark tiles are obstacle nodes and Orange tiles represents the found path.
Algorithms to choose from:
- Breadth first search
- Dijkstra's algorithm
- A* algorithm
- Bidirectional Dijkstra
Java 16 is required.
Run with maven: mvn clean javafx:run
src/
└── main
├── java
│ ├── controller
│ │ └── Controller.java
│ ├── model
│ │ ├── AStar.java
│ │ ├── AStarNode.java
│ │ ├── BidirectionalDijkstra.java
│ │ ├── BreadthFirstSearch.java
│ │ ├── Dijkstra.java
│ │ ├── Graph.java
│ │ ├── MazeDfsGenerator.java
│ │ ├── Node.java
│ │ ├── NodeState.java
│ │ ├── PathAlgorithm.java
│ │ └── Point.java
│ ├── module-info.java
│ ├── startup
│ │ └── Main.java
│ └── view
│ ├── Screen.java
│ └── View.java
└── resources