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

Public методы

int AddVertex(PointF coords) - добавляет к графу вершину с координатами coords, при этом порядок матрицы графа увеличивается на единицу. Возвращает индекс добавленной вершины.

void DeleteVertex(int index) - удаляет из графа вершину с индексом index. При этом из матрицы графа также удаляется соответствующие вершине строка и столбец.

int GetVertexIndexFromPoint(PointF p) - возвращает индекс вершины графа, которой принадлежит точка с координатами p. В случае если такой вершины не найдено, возвращает -1.

int[] GetVerticesFromNodePoint(PointF node) – возвращает массив размерностью 2, в которых находятся индексы вершин графа, ребру которых (если такое существует) принадлежит точка с координатами node. Если таких вершин не найдено или они не соединены ребром, функция возвращает null.

void SetVertexCoordinats(int index, PointF coord) - устанавливает координаты вершины с индексом index равными coord.

void ArrangeByCircle()

void ArrangeByCircle(int radius) - располагает вершины графа по окружности радиусом Radius.

Image DrawVerticesToImage(int[] indexes) - рисует вершины с индексами indexes графа в объект класса Image. Размеры области рисования вычисляются из нахождения вершин с координатами максимально и минимально удаленными от осей X и Y.

Возвращает объект класса Image, в котором было произведено рисование.

void Draw(Graphics g) - рисует граф в области g.

void SaveToFile(string filename) - сохраняет граф в бинарный файл. Описание формата представлено в таблице 2.3.1.

Таблица 2.1 - Формат файла .g

Смещение (байт) DEC Размер (байт) Содержимое
0 2 Сигнатура файла .g: 0x0A0D
2 2 Версия файла ( 0 )
4 2 Число вершин в графе (порядок матрицы смежности).
6 Число вершин графа в квадрате Матрица смежности графа. Хранится построчно
sizeof(float)*2 * число вершин в графе Координаты вершин графа. Хранятся построчно:x1y1x2y2…xnyn

static Graph FromFile(string filename) - создает граф из файла графа.

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.

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