рефераты рефераты
Главная страница > Курсовая работа: Разработка программы нахождения всех полных подграфов (клик) данного графа  
Курсовая работа: Разработка программы нахождения всех полных подграфов (клик) данного графа
Главная страница
Банковское дело
Безопасность жизнедеятельности
Биология
Биржевое дело
Ботаника и сельское хоз-во
Бухгалтерский учет и аудит
География экономическая география
Геодезия
Геология
Госслужба
Гражданский процесс
Гражданское право
Иностранные языки лингвистика
Искусство
Историческая личность
История
История государства и права
История отечественного государства и права
История политичиских учений
История техники
История экономических учений
Биографии
Биология и химия
Издательское дело и полиграфия
Исторические личности
Краткое содержание произведений
Новейшая история политология
Остальные рефераты
Промышленность производство
психология педагогика
Коммуникации связь цифровые приборы и радиоэлектроника
Краеведение и этнография
Кулинария и продукты питания
Культура и искусство
Литература
Маркетинг реклама и торговля
Математика
Медицина
Реклама
Физика
Финансы
Химия
Экономическая теория
Юриспруденция
Юридическая наука
Компьютерные науки
Финансовые науки
Управленческие науки
Информатика программирование
Экономика
Архитектура
Банковское дело
Биржевое дело
Бухгалтерский учет и аудит
Валютные отношения
География
Кредитование
Инвестиции
Информатика
Кибернетика
Косметология
Наука и техника
Маркетинг
Культура и искусство
Менеджмент
Металлургия
Налогообложение
Предпринимательство
Радиоэлектроника
Страхование
Строительство
Схемотехника
Таможенная система
Сочинения по литературе и русскому языку
Теория организация
Теплотехника
Туризм
Управление
Форма поиска
Авторизация




 
Статистика
рефераты
Последние новости

Курсовая работа: Разработка программы нахождения всех полных подграфов (клик) данного графа

List<List<int>> FindAllCliques() - возвращает список списков вершин графа, образующих клики.

Private методы

PointPlace pointClassify(PointF point, PointF origin, PointF dest) - возвращает перечисление PointPlace, указывающую в каком положении относительно отрезка, начинающегося в точке origin и оканчивающемуся в точке dest находится точка.

Перечисление PointPlace:

enum PointPlace : int

{

LEFT = 0,

RIGHT = 1,

BEYOND = 3,

BEHIND = 4,

BETWEEN = 5,

ORIGIN = 6,

DESTINATION = 7,

}

bool pointInTriangle(PointF p, PointF a, PointF b, PointF c) - возвращает true, если точка p принадлежит треугольнику с координатами вершин a, b, c. В противном случае возвращает false.

void SubtractSet(List<int> set, int vert) - удаляет вершину c индексом vert из списка set.

void SubtractSet(List<int> set1, List<int> set2) - удаляет из списка set1 элементы, содержащиеся в set2 (если таковые присутствуют).

List<int> G(int vert) - возвращает список вершин, не смежных с вершиной с индексом vert.

Свойства

int Radius - возвращает размер графа.

int VertexRadius - возвращает радиус вершины.

Private свойства

VertexMatrix gmatrix - матрица вершин графа.

List<PointF> vertices - список координат вершин графа.

Font font - шрифт, используемый для номеров вершины графа. Используется шрифт Verdana высотой 9 пунктов.

int graph_rad - ширина графа. По умолчанию равна 60.

int vertex_rad - радиус вершины графа. По умолчанию равен 10.

bool ellipse - определяет, располагать ли вершины графа по окружности радиусом graph_rad.

 

2.3.3 Класс From1

Конструктор

Form1() - cоздает экземпляр класса Form1.

Public методы

Класс не имеет public методов.

Private методы

IDockContent GetContentFromPersistString(string persistString) - метод, необходимый для подготовки компонента DockPanel к работе и обеспечивает возможность размещения в ней докингого окна класса MatrixWindow.

Параметр persistString – имя класса докингого окна.

void Form1_Load(object sender, EventArgs e) - обработчик события Load окна.

void saveDocument(bool saveAs) - отображает меню "Сохранить", предоставляющее возможность сохранить граф в файл. Если граф создан не из файла, пользователю предоставляется возможность самостоятельно выбрать имя, тип и путь к сохраняемому файлу посредством стандартного диалога сохранения файла Windows. В случае, если параметр saveAs равен true, будет вызвано стандартное окно "Сохранить как" Windows.

void openDocument() - отображает стандартное диалоговое окно открытия файла Windows. Если до вызова этой функции был создан граф или производились изменения в существующем, будет выведено диалоговое окно с предложением сохранить граф.

void newDocument() - закрывает текущий документ (если таковой имеется) и создает пустой граф для последующей с ним работе в программе. Если до вызова этой функции был создан граф или производились изменения в существующем, будет выведено диалоговое окно с предложением сохранить граф.

void UNDOAction() - отменяет последнее совершенное пользователем редактирование графа.

void REDOAction() - отменяет отмену последнего совершенного пользователем редактирования графа.

void AddToUNDO(Graph graph) - добавляет граф graph в стек отмены.

void dockPanel_Paint(object sender, PaintEventArgs e) - событие Paint объекта класса dockPanel.

void DoToolAction(AppTool t, PointF coords) - выполняет действие, предписанное инструментом t с начальными координатами coоrds.

void dockPanel_MouseDown(object sender, MouseEventArgs e) - обработчик события MouseDown объекта класса dockPanel.

Используется для получения координат мыши и вызова метода DoToolAction.

void dockPanel_MouseMove(object sender, MouseEventArgs e) - обработчик события MouseMove объекта класса. Используется для получения координат мыши инструментами "Курсор" и "Добавление ребер".

void dockPanel_MouseUp(object sender, MouseEventArgs e) - обработчик события MouseUp объекта класса DockPanel. Используется для уведомления инструмента "Добавление ребра" о том, что действие закончилось.

void toolStripButtonCursor_CheckStateChanged(object sender, EventArgs e) - изменяет выбранный инструмент на инструмент "Курсор".

void toolStripButtonAddVertex_CheckStateChanged(object sender, EventArgs e) - изменяет выбранный инструмент на инструмент "Добавление вершин".

void toolStripButtonDelVertex_CheckStateChanged(object sender, EventArgs e) - изменяет выбранный инструмент на инструмент "Удаление вершины".

void toolStripButtonAddNode_CheckStateChanged(object sender, EventArgs e) - изменяет выбранный инструмент на инструмент "Добавление ребер".

void toolStripButtonDelNode_CheckStateChanged(object sender, EventArgs e) - изменяет выбранный инструмент на инструмент "Удаление ребер".

void toolStripButtonUndo_Click(object sender, EventArgs e) - обработчик клика по кнопке "Отменить" панели инструментов. Нажатие этой кнопке приведет к откату состояния графа на предыдущее.

void toolStripButtonRedo_Click(object sender, EventArgs e) - обработчик клика по кнопке "Повторить" панели инструментов. Нажатие этой кнопки приведет к отмену отмены изменений в графе.

void PropertiesWindowToolStripMenuItem_CheckStateChanged(object sender, EventArgs e) - обработчик клика по пункту меню Вид -> Окно свойств. Скрывает или показывает окно "Свойства графа".

void ViewToolStripMenuItem_DropDownOpening(object sender, EventArgs e) - обработчик события DropDownOpening панели меню Вид - > Окно свойств. В случае если окно свойств видимо обработчик отмечает элемент меню.

void расположитьВершиныПоОкружностиToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по элементу меню Граф - > Расположить вершины по окружности. Вызов этого меню приведет к расположению графа по радиусу окружности равному свойству Radius графа.

void SaveToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по пункту меню Файл - > Сохранить. Этот же обработчик имеет кнопка "Сохранить" на панели инструментов.

void OpenToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по пункту меню Файл - > Открыть. Этот же обработчик имеет кнопка "Открыть" панели инструментов.

void NewToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по пункту меню Файл - > Новый. Этот же обработчик имеет кнопка "Новый" на панели инструментов.

void printToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по пункту меню Файл - > Печать. Этот же обработчик имеет кнопка "Печать" на панели инструментов.

void pageToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по пункту меню Файл - > Предварительный просмотр. Этот же обработчик имеет кнопка "Предварительный просмотр" на панели инструментов. Открывает окно предварительного просмотра документа перед печатью.

DialogResult userWantsToSaveChanges() - выводит окно с предложением сохранить изменения в документе. Варианты ответа "Да", "Нет", "Отмена". Возвращает структуру DialogResult, содержащую вариант выбранного ответа.

bool closeApp() - функция вызывается при закрытии приложения. Вызывает вышеописанную функцию и, в случае утвердительного ответа, возвращает true. В остальных случаях возвращает false.

void ExitToolStripMenuItem_Click(object sender, EventArgs e) - обработчик клика по пункту меню Файл - > Выход. Вызывает закрытие приложения.

Private свойства

delegate IDockContent DeserializeDockContent ddc - необходим для подготовке контрола dockPanel к работе.

MatrixWindow matrixWindow - окно "Граф".

AppTool currTool - перечисление, определяющее текущий выбранный инструмент.

bool mouseDown - определяет, нажата ли левая кнопка мыши. Используется для работы с инструментами "Курсор" и "Добавить ребро".

int selVertexIndex- индекс выбранной вершины, с которой работает инструмент.

int selVertexIndex2 - индекс второй выбранной вершины, с которой работает инструмент "Добавить ребро".

Point nodePointStart - координата первой выбранной вершины, с которой работает инструмент "Добавить ребро".

Point nodePointEnd - координата второй вершины, с которой работает инструмент "Добавить ребро".

bool documentModified - определяет, были ли произведены изменения в графе. Следует отметить, что если изменения имели быть, но были отменены, документ считается не модифицированным.

string openedDocumentPath - путь к файлу графа или матрице (если граф был создан из файла, else – "").

Stack<Graph> stackUNDO - стек отмены. В него помещается экземпляр графа, перед тем как произвести в нем изменения.

Stack<Graph> stackREDO - стек повтора. В него перемещаются элементы из предыдущего стека при произведении пользователем отмены совершенного им действия.

Следует отметить, что вместо двух стеков может использоваться список элементов типа Graph, что сэкономит ресурсы.

Константы класса

const string GRAPH_OPENSAVE_DIALOG_FILTER = "Граф (*.g)|*.g|Матрица (*.txt)|*.txt" - константа, определяющая свойство Filter у стандартных диалогов открытия/сохранения файла.

const string PROGRAM_NAME = "Cliques" - заголовок окна.

Страницы: 1, 2, 3, 4, 5

рефераты
Новости