-
Notifications
You must be signed in to change notification settings - Fork 0
/
pathFindingAlgorithms.h
47 lines (30 loc) · 1.18 KB
/
pathFindingAlgorithms.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#pragma once
#include "Tile.h"
namespace auxiliaryFunctions
{
//auxiliary functions
int getRandomInt(int min, int max);
void drawShortestPath(Tile* endTile);
void clearOldPath(std::vector<std::vector<Tile>>& tileMap);
void clearOldVisitedTiles(std::vector<std::vector<Tile>>& tileMap);
void updateVisualization(std::vector<std::vector<Tile>>& tileMap,
sf::RenderWindow* window);
void sortTilesToTest(std::vector<Tile*>& tilesToTest, int startIndex,
int endIndex);
int partition(std::vector<Tile*>& tilesToTest, int startIndex,
int endIndex);
void setTilesDefaultValues(std::vector<std::vector<Tile>>& tileMap);
void setTilesToTestColor(std::vector<Tile*>& tilesToTest,
Tile* startTile, Tile* endTile);
void setVisitedTilesColor(std::vector<std::vector<Tile>>& tileMap,
Tile* startTile, Tile* endTile);
void visualizationMode(std::vector<std::vector<Tile>>& tileMap,
sf::RenderWindow* window, std::vector<Tile*>& tilesToTest,
Tile* currentTile, Tile* startTile, Tile* endTile);
}
namespace pathFindingAlgorithms
{
//Path finding functions
void A_STAR_ALGORITHM(std::vector<std::vector<Tile>>& tileMap,
Tile* startTile, Tile* endTile, sf::RenderWindow* window);
}