Помогите красиво нарисовать граф?
От: NewBayes Украина  
Дата: 02.01.08 10:15
Оценка:
Необходимо нарисовать граф (ориентированный ациклический граф или дерево) на плоскости. Интересуют бесплатные библиотеки на С++, которые работают по принципу: получить матрицу инцидентности или список смежности, а вернуть координаты вершин графа. Если существуют похожие библиотеки, то где их найти?
Re: Помогите красиво нарисовать граф?
От: . Великобритания  
Дата: 02.01.08 11:02
Оценка: 1 (1) +1
NewBayes wrote:

> Необходимо нарисовать граф (ориентированный ациклический граф или

> дерево) на плоскости. Интересуют бесплатные библиотеки на С++, которые
> работают по принципу: получить матрицу инцидентности или список
> смежности, а вернуть координаты вершин графа. Если существуют похожие
> библиотеки, то где их найти?
http://www.graphviz.org/Gallery.php
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Re: Помогите красиво нарисовать граф?
От: Alex Alexandrov США  
Дата: 08.01.08 05:27
Оценка:
Здравствуйте, NewBayes, Вы писали:

NB>Необходимо нарисовать граф (ориентированный ациклический граф или дерево) на плоскости. Интересуют бесплатные библиотеки на С++, которые работают по принципу: получить матрицу инцидентности или список смежности, а вернуть координаты вершин графа. Если существуют похожие библиотеки, то где их найти?


Про graphviz как средство визуализации уже сказали. С точки зрения интеграции со своей программой еще может заинтересовать бесплатная библиотека boost.graph, где есть генератор и парсер описания графов в формате graphviz.
It's kind of fun to do the impossible (Walt Disney)
Re: Помогите красиво нарисовать граф?
От: _Obelisk_ Россия http://www.ibm.com
Дата: 09.01.08 19:49
Оценка: 4 (1)
Здравствуйте, NewBayes, Вы писали:

NB>Необходимо нарисовать граф (ориентированный ациклический граф или дерево) на плоскости. Интересуют бесплатные библиотеки на С++, которые работают по принципу: получить матрицу инцидентности или список смежности, а вернуть координаты вершин графа. Если существуют похожие библиотеки, то где их найти?


Для ориентированного ациклического графа проще всего использовать Sugiyama algorithm (в гугле много ссылок). Его смысл состоит в разбиении всех вершин по уровням + последующая прокладка ребер. Его несложно написать самому (у меня где-то порядка 1000 строк получилось)



Душа обязана трудиться! (с) Н.Заболоцкий.
Re: Помогите красиво нарисовать граф?
От: bnk СССР http://unmanagedvisio.com/
Дата: 11.01.08 11:45
Оценка:
Здравствуйте, NewBayes, Вы писали:

NB>Необходимо нарисовать граф (ориентированный ациклический граф или дерево) на плоскости. Интересуют бесплатные библиотеки на С++, которые работают по принципу: получить матрицу инцидентности или список смежности, а вернуть координаты вершин графа. Если существуют похожие библиотеки, то где их найти?


Тут мне как-то советовали по похожему поводу (наборы ссылок):
http://www.rsdn.ru/forum/message/2352609.aspx
Автор: Константин
Дата: 15.02.07
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.