Технологический раздел, Определение структуры и состава программной системы - Выбор оптимального маршрута для строительства дороги
Определение структуры и состава программной системы
В программе использованы поля данных, структуры, конструктор, а также методы.
Поля данных:
- - public int countRow, countCol - переменные для хранения количества строк и столбцов; - int cellWidth, cellHeight - переменные для хранения ширины и высоты ячейки; - int[,] map - массив для создания и заполнения карты местности; - int[,] mapCost - массив для создания и заполнения карты стоимостей; - int startX, startY - переменные для хранения начальных значений x и y; - public int Row, Col - переменные структуры Checkpoint для хранения строк и столбцов соответственно;
Структуры:
- - public struct Checkpoint - структура контрольных точек; - public struct Vertex - структура вершин.
Конструктор:
- public RoadOptimal(string pathFile, PictureBox pb, int costPath, int costGrass, int costForest, int costHome, Checkpoint? startPoint, Checkpoint? endpoint, bool curMap) - конструктор, который создает массив "map" из файла.
Методы:
- - private void GetPos(int x, int y, out int row, out int col) - метод для определения позиции (row, col) ячейки; - public int GetRow(int x, int y) - метод для определения индекса строки; - public int GetCol(int x, int y) - метод для определения индекса столбца; - private void GetPosForm(int row, int col, out int x, out int y) - метод для определения координат левого верхнего угла ячейки; - private int GetX(int row, int col) - метод для определения координаты x; - private int GetY(int row, int col) - метод для определения координаты y; - public void DrawPoint(bool start) - метод прорисовки опорной точки (начала или конца пути); - public void DrawMapCost() - метод прорисовки карты стоимостей; - public void ClearMap() - метод очистки карты; - public void DrawMap() - метод прорисовки карты; - private double Distance(Vertex p1, Vertex p2) - метод вычисления расстояния между двумя точками, координаты row, col; - private List getavailablepositions(list listlastvertex, vertex c) - метод определения доступных вершин на игровом поле для совершения хода; - private Vertex? GetNextStep(List listlstvertex, vertex curpos, vertex end) - метод для определения следующего хода; - public List findoptimalpath(vertex srart, vertex end) - метод нахождения кратчайшего пути с помощью алгоритма дейкстры; - public void DrawOptimalPath(List list) - метод прорисовки оптимального пути на карте местности.
Похожие статьи
-
Разработаем алгоритм одного из основных методов, используемого в данной программе. Private void pictureBox1_MouseDown(objects sender, MouseEventArgs e)...
-
Обзор и анализ существующих программных решений Из доступных программных решений можно выделить пару программ. Первая программа SusaninLab 1.2 -...
-
В данном разделе была разработана функциональная схема работы программного комплекса, которая в общем виде описывает состав комплекса, характер и виды...
-
Введение - Выбор оптимального маршрута для строительства дороги
В данном курсовом проекте по дисциплине "Языки программирования" описаны алгоритмы функционирования разрабатываемой программы. Практическая часть проекта...
-
Виды контроля качества разрабатываемого ПО Тестирование программы - это этап, на котором проверяется, как ведет себя программа на как можно большем...
-
Обоснование выбора языка и среды программирования Для реализации данного курсового проекта был выбран язык программирования Visual C#. Язык основан на...
-
При разработке данной программы были допущены следующие синтаксические ошибки: - неправильное использование операторов присваивания; - неверное...
-
Описание используемых методов и алгоритмов - Выбор оптимального маршрута для строительства дороги
В данном пункте нужно проанализировать используемый алгоритм поиска кратчайшего пути. Алгоритм Дейкстры Находит кратчайший путь от одной из вершин графа...
-
ЗАКЛЮЧЕНИЕ, Список использованных источников - Выбор оптимального маршрута для строительства дороги
При написании программного комплекса курсовой работы использовался язык C Sharp, среда программирования - Microsoft Visual Studio. В результате были...
-
Графический и пользовательский интерфейс представляет собой важную часть любой программы. От его оптимизации зависит скорость и удобство работы с...
-
Особенностью API для коммуникации с СКУД является то, что авторизация методов происходит не с помощью токена, а с помощью проверки IP адреса клиента на...
-
Эмуляция карт в Android основана на сервисах (класс Service). Преимуществом использования сервисов является отсутствие необходимости запускать...
-
Очередность разработки Системы А) разработка программного обеспечения для ввода, редактирования и актуализации контента, синхронизации с хранилищем...
-
Цель Работы - изучить одну из базовых концепций ООП, наследование классов в С++, заключающуюся в построении цепочек классов, связанных иерархически,...
-
Функциональная структура отражает жизненный цикл данных, циркулирующих и хранящихся в Системе. Решение по функциональной архитектуре Системы представлено...
-
Использование парадигмы ООП. Разрабатываемая АИС является системой с открытым исходным кодом и значит должна являться масштабируемой сторонними...
-
Для написания АИС использовались следующие языки программирования, программные средства и библиотеки: - Язык программирования PHP 5.4; -...
-
Учебный процесс в ННГАСУ сопровождается значительной информационной базой, развитием компьютерного парка и внедрением в образовательный процесс...
-
Solidworcks Enterprise PDM (SWE-PDM) управляет данными и процессами на различных этапах жизненного цикла изделия, обеспечивая коллективную (параллельную)...
-
Выбранные датчики, исполнительные механизмы и их месторасположение, а также структурная схема АСУ ТП производства сухого молока позволяют составить схему...
-
Цель Работы - изучить основные способы работы с пользовательским типом данных "класс", его объектами, методами и способы доступа к ним. - Теоретические...
-
Алгоритм для определения силы комбинации - Программа построения равновесных стратегий для игры
В играх типа Omaha для определения силы комбинации необходимо учитывать 9 карт: 4 стартовых карты игрока и 5 общих карт. По стандартным правилам покера...
-
Для решения поставленных задач используются следующие методы: 1) Иерархия пользователей будет определена при помощи построения UML диаграммы, для...
-
Определение методов реинжиниринга информационных систем Основные задачи, которые стоят перед проектировщиком, занимающимся реинжинирингом информационных...
-
В связи с увеличением числа сотрудников, работающих в компании, а также с расширением рабочего проекта, возникла проблема, связанная с версионностью...
-
Структура системы В ходе разработки выпускной квалификационной работы использовались базы данных, созданные в среде MySQL Workbench, и создано клиентское...
-
Устройство на операционной системе Android с поддержкой технологии NFC поддерживает три способа взаимодействия. Первый способ - режим чтения/записи. Этот...
-
Введение - Программное обеспечение для пропускной системы на основе технологии NFC
Массовые мероприятия стали неотъемлемой частью современного мира. Для таких мероприятий требуется быстрая организация временного разделенного доступа для...
-
Структура системы - Инженерия программного обеспечения. Регистрация пассажира на рейс авиакомпании
- Структура системы - это устойчивая упорядоченность ее элементов и связей. - Структура есть форма представления некоторого объекта в виде составных...
-
Алгоритм работы. В результате работы АИС генерируются три xml документа - два со структурой сравниваемых баз данных и один с результатами сравнения. В...
-
В рамках выпускной квалификационной работы была разработана автоматизированная информационная система, предназначенная как для автоматического, так и для...
-
Анализ безопасности - Программное обеспечение для пропускной системы на основе технологии NFC
Для обеспечения безопасности системы было решено использовать протокол HTTPS для связи клиента и сервера. Использование протокола HTTPS для коммуникации...
-
SimpleXML. В PHP версии 5.0 и выше появилось расширение для работы с xml структурой. Библитека SimpleXML содержит большое количество методов для работы с...
-
Заключение - Программное обеспечение для пропускной системы на основе технологии NFC
Обеспечение удобной пропускной системы - важная и актуальная задача. Появление новых технологий, таких как NFC и HCE, позволяет решить эту проблему. В...
-
Для того чтобы выполнить автоматическое тестирование с использованием Cucumber, прежде всего необходимо иметь представление о структуре инструмента и...
-
Особенностью архитектуры REST является отсутствия хранения состояния на сервере. Для того, чтобы не передавать пользовательские логин и пароль каждый...
-
Исходные данные, Пользовательские типы данных - Система поиска автобусных маршрутов
Пользовательские типы данных В программе использовано несколько пользовательских типов данных. Так как программа написана с использованием...
-
Метод конечных элементов является численным методом для нахождения приближенных решений физических задач. В основе этого метода лежит разделение...
-
Для тех организаций, в которых необходимо поддерживать единую автоматизированную систему в нескольких территориально удаленных точках (подразделениях,...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
Технологический раздел, Определение структуры и состава программной системы - Выбор оптимального маршрута для строительства дороги