Можно ли использовать GraphViz для графического интерфейса редактирования? - PullRequest
9 голосов
/ 10 мая 2010

Я создаю приложение, которое позволит разработчику создавать блок-схему программы, выбирая предопределенные функции из панели инструментов (которая будет отображаться в виде небольших графических элементов). Другими словами, разработчик выберет одну или несколько предопределенных функций (графических элементов) из ToolBox и перетащит их в основную рабочую область. Затем приложение на основе выбранного потока функций автоматически сгенерирует готовый к компиляции код.

Я посмотрел GraphViz, но не уверен, можно ли его использовать для создания графической среды разработки для редактирования графических элементов. Я ищу функциональность, аналогичную Microsoft Visio, где пользователи могут добавлять / удалять / перетаскивать / различные фигуры для создания диаграммы.

Подходит ли GraphViz здесь? Если да, можете ли вы привести мне несколько примеров, показывающих, как это сделать? Если GraphViz не может быть использован, какие есть другие открытые / бесплатные компоненты?

Я собираюсь создать окончательное приложение в .Net.

Ответы [ 2 ]

3 голосов
/ 14 мая 2010

Хотя Graphviz можно использовать для такой интерактивной графической среды, я не уверен, что это будет лучшим инструментом для нее. Сила Graphviz, на мой взгляд, состоит в том, чтобы довольно легко визуализировать различные формы существующих данных в графической форме.

Если вы планируете использовать графический интерфейс в браузере, я бы порекомендовал либо Raphael , либо Jit . Оба основаны на javascript и более легко дают вам контроль. Рафаэль хорош, если вы хотите дать пользователю полный контроль над тем, как все устроено ( пример ). JIT хорош, если вы хотите добавить и удалить узлы, но у вас есть структура, которая сделает макет за вас ( пример ).

0 голосов
/ 10 мая 2010

Да, graphviz определенно пригоден для этого. Он поставляется с привязками Каира, которые позволяют легко интегрировать в GUI. Вы также можете пойти дальше, просто набрав dotty или lefty, простые обертки, которые поставляются с графвизом.

...