Skip to content

Visualiser: original look, tabs, Compare All, weighted A* - #2

Merged
anson10 merged 4 commits into
mainfrom
refactor/library-tests-bench
Oct 8, 2026
Merged

anson10 merged 4 commits into
mainfrom
refactor/library-tests-bench

Conversation

@anson10

@anson10 anson10 commented Oct 8, 2026

Copy link
Copy Markdown
Owner

The visualiser in its original look, after #1.

  • Original palette and layout: white grid, dark walls, green start, red end, light-blue visited, yellow path, grey panel, Arvo font
  • Original flow: click an algorithm to run it; Generate Random Maze, Perfect Maze, Weighted Terrain, Compare All; Reset Grid pinned to the bottom
  • Kept from Library, property tests, benchmark and CI #1: resizable window, replay speed with pause and skip, continuous strokes, mud, a short fade-in on visited cells
  • Plain SFML panel: the Dear ImGui detour (90d9895) is removed again in c65e565, so the app needs only SFML
  • Screenshots and README regenerated

- Side panel in Dear ImGui (dark theme, Inter font): algorithm list, results, replay, grid and draw settings
- Compare all: the five algorithms on the current grid in one table, best cost and fewest cells highlighted
- Resizable window; grid rescales; replay in cells per second with pause and skip; continuous (Bresenham) strokes
- Expansion coloured by order with a timed fade-in; path as a thick line; round markers; legend and hover info on the canvas
- Screenshots regenerated with the app's offscreen mode; README controls updated; CI installs OpenGL
- Original palette and layout: white grid, dark walls, green start, red end, light-blue visited, yellow path, grey panel, Arvo font
- Click an algorithm to run it, as before; Generate Random Maze, Perfect Maze, Weighted Terrain, Compare All, Reset Grid pinned to the bottom
- Panel drawn with SFML again (hover states); ImGui and the Inter font removed, so the build needs only SFML
- Kept: resizable window, replay speed with pause/skip, continuous strokes, mud, timed fade-in of visited cells
- Screenshots and README regenerated
…ding

- Small SFML widget set in the app's own style: buttons, tabs, segmented controls, toggles, sliders, tooltips
- Search tab: click-to-run algorithms, Compare All, results, replay speed slider, pause/skip/clear, shade-by-visit-order toggle
- Grid tab: Empty/Random/Maze/Terrain, size, wall-density and seed sliders, Wall/Mud/Erase tools with mud cost
- Legend and hovered-cell cost under the grid; README and screenshots updated
- search() takes an A* weight w: priority g + w*h, integer-scaled; weight 1 is plain A*
- Property test: path cost at most w times the optimum on random weighted grids for w from 1.2 to 5
- Benchmark rows for w = 1.5, 2, 3, 5: on terrain w = 5 expands 140x fewer cells than Dijkstra for +13.7% cost
- App: A* weight slider in the Search tab; Compare All and results show the weight and its bound
- README: results and the reasoning (weight must reach the average step cost before it helps)
@anson10 anson10 changed the title Visualiser: original look, resizable, compare all Visualiser: original look, tabs, Compare All, weighted A* Oct 8, 2026
@anson10
anson10 merged commit ef2c227 into main Oct 8, 2026
3 checks passed
@anson10
anson10 deleted the refactor/library-tests-bench branch October 8, 2026 19:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant