How oosubhisara/java-pathfinding works
This JavaFX application lets a user edit a tile map, mark start and target cells, find a route, and animate movement along it; maps can also be opened and saved. The sampled code shows the app loading the scene, coordinating the controller and grid, and invoking BFS before starting a timed walk. The grid owns tile state, rendering, and map-file I/O. The tree and README identify JavaFX as the UI, but the FXML wiring was not sampled, so UI-to-controller event links are omitted.
Main entry points: PathFindingApp.java Pathfinding app · Grid.java Tile grid · Controller.java UI controller · Bfs.java Breadth-first search
Components 10
JavaFX interface
- Main scene
src/main/resources/com/oosubhisara/walker/MainScene.fxml
Application control
- Pathfinding app
src/main/java/com/oosubhisara/walker/PathFindingApp.java - UI controller
src/main/java/com/oosubhisara/walker/Controller.java - Timed path walk
src/main/java/com/oosubhisara/walker/PathFindingApp.java
Map and search
- Tile grid
src/main/java/com/oosubhisara/walker/Grid.java - Breadth-first search
src/main/java/com/oosubhisara/algorithm/Bfs.java
Launch and state
- Launcher
src/main/java/com/oosubhisara/walker/Launcher.java - Controller reference
src/main/java/com/oosubhisara/walker/Global.java
Other components
- Map editor user
- Map files
Connections 14
- Map editor user → UI controller: edits map
- Launcher → Pathfinding app: launches
src/main/java/com/oosubhisara/walker/Launcher.java - Pathfinding app → Main scene: loads scene
src/main/java/com/oosubhisara/walker/PathFindingApp.java - UI controller → Pathfinding app: requests actions
src/main/java/com/oosubhisara/walker/Controller.java - UI controller → Controller reference: registers itself
src/main/java/com/oosubhisara/walker/Controller.java - Pathfinding app → UI controller: sets controller
src/main/java/com/oosubhisara/walker/PathFindingApp.java - Pathfinding app → Tile grid: creates and configures
src/main/java/com/oosubhisara/walker/PathFindingApp.java - UI controller → Tile grid: edits and refreshes
src/main/java/com/oosubhisara/walker/Controller.java - Pathfinding app → Tile grid: loads and saves
src/main/java/com/oosubhisara/walker/PathFindingApp.java - Tile grid → Map files: reads and writes
src/main/java/com/oosubhisara/walker/Grid.java - Tile grid → Breadth-first search: builds search nodes
src/main/java/com/oosubhisara/walker/Grid.java - Pathfinding app → Breadth-first search: finds route
src/main/java/com/oosubhisara/walker/PathFindingApp.java - Pathfinding app → Timed path walk: starts animation
src/main/java/com/oosubhisara/walker/Controller.java - Timed path walk → Tile grid: updates and draws
src/main/java/com/oosubhisara/walker/PathFindingApp.java