Skip to content

dark-dylan-dev/Pathfinding_GTECH_Maps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation



G.TECH Maps

A Pathfinding application
Platform: Windows (x64)

Summary

Setup

You will need :

To set up the project, run the following commands in your terminal:

git clone https://github.com/GamingCampus-MillieBourgois-25-26/pathfinding-dylan-janelle
cd pathfinding-dylan-janelle
GTECH_Maps.sln

And you're ready to go!

Algorithms

The application includes three specific pathfinding algorithms.

  • A*
  • B.F.S (Breadth First Search)
  • Dijkstra

About the app

G.TECH Maps! is a pathfinding app inspired by the OpenStreetMap.

It was developed in three weeks using SFML for the rendering and ImGui for the user interface.

Using ImGui SFML to link the two libraries to the same render context.

Controls

  • Mouse wheel to zoom inside the map view.
  • Hold left click and Move the mouse to move inside the map.
  • Right click to add a start and an end point on the map.

Features

Estimated costs

  • Distance (km)
  • Time (hours)
  • Average speed (km/h)
  • Fuel consummation (L)
  • Fuel price (€)

Optional informations about the path

  • Tolls taken by the path
  • Number of explored nodes
  • Speed graph over time (x-axis: steps, y-axis: speed (km/h))
  • The itinerary found step by step.

Using the ImGui user interface included in the application, you can click on checkboxes to make those options appear.

Avoid toll mode

You can click on the "Avoid toll" checkbox to generate a path without any toll cost, proventing any unnecessary expense in exchange for some time.

The paths generated in this mode still try to reduce the time cost as much as they can.

Import / Export system

The application has a built-in import / export system for the user-generated .csv pathfinding files.

To export a file, you can click the "Log to file" button after finding a non-imported path.

To import a file, you can click the persistent "Import path file" button.

The generated CSV files contain multiple informations relative to a generated path, e.g:

id,x,y,type
1234,50.02,65.03,Motorway
772,65.73,49.15,Motorway
98654,75.46,85.72,Motorway
5547,42.89,46.71,Primary
129,21.75,78.89,Secondary
68426,75.65,52.78,Tertiary
2258,122.45,143.56,Residential
...

The name of a generated CSV file is generated following this rule : "<PathType>_<Date>_<Time>.csv"

e.g. "BFS_Nov_19_2025_15_58_37.csv"

The application internally uses the TinyFileDialogs library to open file dialogs when importing a file.

Known bugs

There are no known bugs at this time.

If you encounter one, please open an issue on this repository with a clear description of the problem.

Have fun finding new paths with G.TECH Maps!

Dylan Hollemaert & Janelle Grumiaux--Kapahou Kenmoe

About

Pathfinding program using SFML & ImGui, implements BFS, Dijkstra and A*

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors