Использование библиотеки GLEE для визуализации графов
Post date: Mar 20, 2011 6:43:25 AM
Ниже рассмотрены основные шаги, которые необходимо выполнить для использования библоиотеки GLEE (по материалам Валентины Кустиковой). Эту библиотеку можно использовать в некоммерческих целях.
- Скачиваем дистрибутив библиотеки GLEE и устанавливаем его.
- Подключаем визуальную компоненту GLEE в Microsoft Visual Studio:
- Кликаем правой кнопкой мыши внутри вкладки Toolbox (чтобы открыть вкладку необходимо выполнить View->Toolbox).
- В появившемся меню выбираем Choose Items...
- Открываем вкладку .NET Framework Components.
- Нажимаем кнопку Browse.
- Указываем dll-ку Microsoft.GLEE.GraphViewerGDI.dll (добавится комонент GViewer).
- Нажимаем кнопку OK.
- В Toolbox во вкладке General появится новая визуальная компонента GViewer.
- Выставляем в проекте ссылки на .Net сборки:
- Кликаем правой кнопкой по проекту, выбираем из меню вкладку References.
- В дереве справа выбираем вкладку Common Properties->Frameworks and References.
- Нажимаем кнопку Add New Reference...
- Выбираем вкладку Browse.
- В поле Look in идем по тому пути, где лежит установленная библиотека (по умолчанию это путь следующего вида c:\Program Files\Microsoft Research\GLEE\bin)
- Выбираем все dll-ки и жмём OK.
- Перетаскиваем компоненту GViewer на форму. Дадим ей имя gViewer.
- В исходном файле формы:
- Добавляем пространство имен (using namespace Microsoft::Glee::Drawing;).
- Чтобы работать с графом, достаточно использовать 2 метода AddNode (добавление узла) и AddEdge (добавление ребра). Ниже показан пример использования.
Graph ^g = gcnew Graph("graph");
g->AddNode("1"); // добавление узла с идентификатором 1
g->AddNode("2"); // добавление узла с идентификатором 2
g->AddNode("3"); // добавление узла с идентификатором 3
g->AddNode("4"); // добавление узла с идентификатором 4
g->AddEdge("1", "9", "2"); // добавление ребра от узла 1 к узлу 2 с меткой 9
g->AddEdge("2", "-7", "4");// добавление ребра от узла 2 к узлу 4 с меткой -7
g->AddEdge("1", "2", "3"); // добавление ребра от узла 1 к узлу 3 с меткой 2
gViewer->Graph = g;