Dunnart Constraint-Based Diagram Editor

15th June 2009: A note to GD '09 reviewers: We are having some issues creating new stable builds of Dunnart due to some library packaging issues. In the meantime, here is a short video showing the orthogonal connector routing.

March 2009: While work is progressing well, development on the new version of Dunnart has been delayed while working on a project to add orthogonal routing support to libavoid. Dunnart v2 is now likely to be available in late 2009.

September 2008: Development of this prototype version of Dunnart has ceased. The code is currently being cleaned up and ported to the Qt GUI toolkit. Dunnart v2 will reappear shortly as an open source project, licenced under the GPL.

What is Dunnart?

Dunnart is a prototype constraint-based diagram editor. It includes standard diagram editing capabilities, as well as advanced features such as constraint-based geometric placement tools (alignment, distribution, separation, non-overlap, and page containment), automatic object-avoiding poly-line connector routing, and continuous network layout.

The concept behind Dunnart is to use constraint-based methods to free users from manually maintaining relationships within their diagrams. These could include geometric relationships, non-overlap, object-avoiding connector routes or graph layout. In Dunnart, the user can define these features of their layout and they will be automatically maintained throughout further editing. The user can override or alter these relationships at any time

Dunnart screenshot

Dunnart is a research prototype. As such, it lacks some of the features and polish of a professional diagram editor. Most of the interesting features of Dunnart are implemented in the Adaptagrams libraries and are described in my publications or my PhD thesis.

Dunnart and Systems Biology

One particular area of research that needs the facilities of Dunnart is systems biology. To that end, Dunnart is currently being extended to support the community standards, especially the Systems Biology Graphical Notation, and systems biology file exchange formats such as SBML and BioPax.

The first round of systems biology support plugins should be available by the end of the year.

Downloads

Version: 0.17, built 15/07/2008.

General information on loading and saving files and description of Dunnart's command line arguments can be seen by running Dunnart with the -h command line argument.

Note: connectors can be created by holding ALT, then clicking on the connection points that appear at the centre of shapes and dragging to another centre connection point.

If Automatic Graph Layout is turned on, then holding the ALT key will suspend the layout. This can be useful to manually to alter the topology of the graph, when Beautification is enabled.

The examples directory contains lots of examples. Dunnart can be run with one of these examples by giving the file as a command line argument, for example ./dunnart examples/graph.svg

Undo and redo commands are broken in the current version and their use may cause Dunnart to crash in some circumstances.

Mac OS X

This build has been tested on both OS X 10.4 and 10.5. It is built for PPC, but will run under Intel via Rosetta.

dunnart-0.17-osx.tar.gz   6.1 MB

Linux

This build requires you to have the following libraries installed:

dunnart-0.17-linux.tar.gz   2.0 MB

Windows

This build includes all required dlls and doesn't require installation. Just run the dunnart.exe file in the unzipped directory. Tested on Windows XP.

In general, the Windows builds are less stable than the Linux or Mac OS X builds since they are built using a cross-compiler, and the developers do not work on Windows machines. Thus, the Windows version is provided as a courtesy but your milage with it may vary! It may or may not work under Windows Vista, and reportedly doesn't work under Windows 2000.

dunnart-0.17-win.tar.gz   7.3 MB