Класс для построения оптимального маршрута.
More...
#include <route.h>
|
void | loadMapFromXml (const QString &fileName, QGraphicsScene *scene) |
| Загружает карту из XML-файла.
|
|
void | findOptimalRoute (QPointF *start, QPointF *finish) |
| Находит оптимальный маршрут между двумя точками на карте.
|
|
double | distance (QPointF *current, QPointF *neighbor) |
| Вычисляет расстояние между двумя точками.
|
|
int | heuristic (int x1, int y1, int x2, int y2) |
| Вычисляет эвристическую оценку расстояния между двумя точками.
|
|
int | findCost (Node *current, Node *goal) |
| Находит стоимость прохода от текущей точки к цели.
|
|
std::vector< Node > | getNeighbors (Node *node, Node *goal, int n) |
| Возвращает соседние узлы для заданного узла.
|
|
bool | searchPoint (QPointF) |
| Проверяет, содержит ли сцена точку.
|
|
std::vector< Node > | aStar (Node start, Node goal, int n) |
| Выполняет поиск оптимального маршрута с использованием алгоритма A*.
|
|
Класс для построения оптимального маршрута.
◆ aStar()
std::vector< Node > Route::aStar |
( |
Node | start, |
|
|
Node | goal, |
|
|
int | n ) |
Выполняет поиск оптимального маршрута с использованием алгоритма A*.
- Parameters
-
start | Начальная точка маршрута. |
goal | Конечная точка маршрута. |
n | Параметр для определения соседей. |
- Returns
- Вектор узлов оптимального маршрута.
◆ distance()
double Route::distance |
( |
QPointF * | current, |
|
|
QPointF * | neighbor ) |
Вычисляет расстояние между двумя точками.
- Parameters
-
current | Текущая точка. |
neighbor | Соседняя точка. |
- Returns
- Расстояние между точками.
◆ findCost()
int Route::findCost |
( |
Node * | current, |
|
|
Node * | goal ) |
Находит стоимость прохода от текущей точки к цели.
- Parameters
-
current | Указатель на текущий узел. |
goal | Указатель на целевой узел. |
- Returns
- Стоимость прохода от текущей точки к цели.
◆ findOptimalRoute()
void Route::findOptimalRoute |
( |
QPointF * | start, |
|
|
QPointF * | finish ) |
Находит оптимальный маршрут между двумя точками на карте.
- Parameters
-
start | Указатель на начальную точку маршрута. |
finish | Указатель на конечную точку маршрута. |
◆ getNeighbors()
std::vector< Node > Route::getNeighbors |
( |
Node * | node, |
|
|
Node * | goal, |
|
|
int | n ) |
Возвращает соседние узлы для заданного узла.
- Parameters
-
node | Указатель на текущий узел. |
goal | Указатель на целевой узел. |
n | Параметр для определения соседей. |
- Returns
- Вектор соседних узлов.
◆ heuristic()
int Route::heuristic |
( |
int | x1, |
|
|
int | y1, |
|
|
int | x2, |
|
|
int | y2 ) |
Вычисляет эвристическую оценку расстояния между двумя точками.
- Parameters
-
x1 | Координата x первой точки. |
y1 | Координата y первой точки. |
x2 | Координата x второй точки. |
y2 | Координата y второй точки. |
- Returns
- Эвристическая оценка расстояния.
◆ loadMapFromXml()
void Route::loadMapFromXml |
( |
const QString & | fileName, |
|
|
QGraphicsScene * | scene ) |
Загружает карту из XML-файла.
- Parameters
-
fileName | Путь к XML-файлу. |
scene | Указатель на графическую сцену. |
◆ searchPoint()
bool Route::searchPoint |
( |
QPointF | pt | ) |
|
Проверяет, содержит ли сцена точку.
- Parameters
-
point | Точка, которую нужно проверить. |
- Returns
- true, если точка содержится на сцене, в противном случае -
-
false
◆ flag
Флаг для обозначения состояния.
◆ obstacle
◆ Polygon
◆ Polygons
std::vector<QPolygonF> Route::Polygons |
Полигоны препятствий на карте.
◆ WayPoints
std::vector<Node> Route::WayPoints |
The documentation for this class was generated from the following files: