Skip to content

TxAnton/SummerPractise

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SummerPractise

Проект "Визуализация алгоритма A* поиск кратчайшего пути в графе"

Инструкция для запуска: В SummerPractise/PracticeProject/out/artifacts/artifactid1_jar/ будет лежать jar файл с названием artifactid1.jar Для его запуска нужна библиотека JavaFX

При запуске укажате ее в аргументах команды: java --module-path path/to/javafx-sdk-14/lib --add-modules javafx.base,javafx.controls,javafx.fxml,javafx.graphics,javafx.media,javafx.swing,javafx.swt -jar artifactid1.jar

Спецификация

  • Входные данные: На вход алгоритму подается ориентированный взвешанный граф. Каждая вершина в графе имеет буквенное обозначение ("a", "b", "c"...), каждое ребро имеет неотрицательный вес. В качестве эвристической функции следует взять близость символов, обозначающих вершины графа, в таблице ASCII.

  • Выходные данные: На каждом шаге выполнения алгоритма отображается текущее графическое представление заданного графа и вычисление эвристической функции.

  • Пользовательский интерфейс: Пользовательский интерфейс представляет собой диалоговое окно, содержащее набор кнопок, предназначенных для управления состоянием программы, а именно:

  1. Добавить вершину: после нажатия на данную кнопку, в рабочей области появляется вершина графа. Образовавшейся вершине пользователь должен дать имя.
  2. Соеденить вершины: после нажатия на данную кнопку и выбора пары вершин, которые должны быть соединены, в рабочей области появляется ребро графа. Для построенного ребра пользователь должен задать вес.
  3. Перемещение: позволяет менять положение вершины внутри рабочей области.
  4. Удалить: нажатие данной кнопки позволяет удалить выбранный элемент графа.
  5. Загрузить: позволяет пользователю загрузить исходные данные для работы алгоритма.
  6. Сохранить: позволяет сохранить текущее состояние графа.
  7. Вперед: нажатие данной кнопки позволяет посмотреть следующий шаг работы алгоритма.
  8. Назад: нажатие данной кнопки позволяет посмотреть предыдущий шаг работы алгоритма.

План разработки:

  1. Прототип: демонстрация окна пользовательского интерфейса программы без функционала. Срок выполнения: к
  2. Итерация 1: написан код для работы алгоритма. Реализована кнопка, отвечающая за отрисовку графа. Срок выполнения: к
  3. Итерация 2: исправлены возможные недочеты в коде алгоритма. Реализованы кнопки пользовательского интерфейса, отвечающие за модификацию текущего состояние графа. Срок выполнения: к
  4. Итерация 3: написан код, для демонстрации пошаговой работы алгоритма. Срок выполнения: к
  5. Финальная версия программы: исправлены возможные недочеты проекта, написан отчет. Срок выполнения: к

Позиции разработчиков:

  • архитектура программы
  • реализация
  • визуализация

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages