Надо нам планаризовать и нарисовать в своём проекте ER-диаграмму.
Для этого её надо как минимум планаризовать.
Ну есть ещё граничные условия типа "9 несвязанных сущностей надо красиво выстаривать в шахматном порядке 3x3".
Жеплателен исходник на .NET под свободной лицензией типа LGPL.
Сваливаю сюда ссылки, которые нарыл, далее буду разбирать.
YFiles. Стоит, как самолёт: http://www.yworks.com/en/products_yfilesdotnet_commercialinfo_prices.htm
GOBLIN - много задач и layout: http://www.math.uni-augsburg.de/~fremuth/goblin.html#intro
GLEE - от MS: http://research.microsoft.com/users/levnach/GLEEWebPage.htm
Netron тоже от MS: http://www.orbifold.net/Netron/info.php
Симпозиум в Вене по теме рисования графов, см секцию Software Exhibition: http://www.informatik.uni-trier.de/~ley/db/conf/gd/gd2001.html
Каталог Open Source Graph Visualization in Java: http://www.manageability.org/blog/stuff/open-source-graph-network-visualization-in-java/view
Graphviz - крайне симпатично: http://www.graphviz.org/
upd: Отличный обзор библиотек.
Для этого её надо как минимум планаризовать.
Ну есть ещё граничные условия типа "9 несвязанных сущностей надо красиво выстаривать в шахматном порядке 3x3".
Жеплателен исходник на .NET под свободной лицензией типа LGPL.
Сваливаю сюда ссылки, которые нарыл, далее буду разбирать.
YFiles. Стоит, как самолёт: http://www.yworks.com/en/products_yfilesdotnet_commercialinfo_prices.htm
GOBLIN - много задач и layout: http://www.math.uni-augsburg.de/~fremuth/goblin.html#intro
GLEE - от MS: http://research.microsoft.com/users/levnach/GLEEWebPage.htm
Netron тоже от MS: http://www.orbifold.net/Netron/info.php
Симпозиум в Вене по теме рисования графов, см секцию Software Exhibition: http://www.informatik.uni-trier.de/~ley/db/conf/gd/gd2001.html
Каталог Open Source Graph Visualization in Java: http://www.manageability.org/blog/stuff/open-source-graph-network-visualization-in-java/view
Graphviz - крайне симпатично: http://www.graphviz.org/
upd: Отличный обзор библиотек.
Tags:
(no subject)
27/9/07 13:32 (UTC)(no subject)
27/9/07 13:38 (UTC)2. Часа времени хватит только тому, кто хорошо натренирован на алгоритмы на графах, и только на один вариант. Я был таким когда-то, но и мне понадобится минимум целый день - на проверить-отладить на репрезентативных случаях.
3. Это делаю не я.
(no subject)
27/9/07 14:11 (UTC)И есть ещё гора задач, которые мы и без этого не обязательно успеем сделать.
(no subject)
27/9/07 14:14 (UTC)зачем автоматизировать операцию, на которую нужен 1 час раз в полгода?
(no subject)
27/9/07 14:15 (UTC)(no subject)
27/9/07 19:41 (UTC)Правда, с учетом граничных условий там относительно сложно.
(no subject)
28/9/07 07:04 (UTC)Надо создавать всякие эфемерные невидимые линки, чтобы достичь такого эффекта.
Либо же чуть подправить алгоритм - там (в dot) отдельно обрабатываются узлы без связей - чтобы они не располагались в линию, а сбивались в кучу ...
(no subject)
27/9/07 21:37 (UTC)Может, как вариант, побить граф на несвязанные компоненты? Потом каждую компоненту разбиваем на "слабосвязанные" компоненты. В результате получаем дерево компонент(например можно добавть возможность скрывать компоненты).
Первое что пришло в голову по поводу нахождения "слабозвязанных" компонент: если бы граф был сетью с истоком и стоком, то мы могли бы в сток залить скажем 1 литр и протолкнуть по графу. Дальше удаляем ребро с максимальным потоком. Опять проталиваем и удаляем, пока не разойдется на две несвязанные компоненты.
(no subject)
28/9/07 07:52 (UTC)Вернее, не он главный. Главное - чтобы было красиво и вчера :)