Re: Avoiding connection conflicts/cross-overs in UML diagrams



2008/8/9 Hans Breuer <hans breuer org>:
On Mon, Jul 14, 2008 at 5:13 PM, David Laban <alsuren gmail com> wrote:
Hello

I want to make dia automatically lay out connections on UML diagrams so
that  they avoid hitting other objects and crossing over each other as
much as
possible. My uncle pointed out that MS visio does a pretty good job of
this
on-the-fly.

Are there any scripts that will already do this? (I would be happy to
have
it as a keyboard shortcut)

There are no scripts currently doing this that I know of. There currently
only is the lib/autoroute.c approach pointed to by Lars, but that is
restricted to information available for a single connection line.

Autodia does autolayout using graphviz and reads dia (and umbrello, etc).

Also you can use autodia to generate dot, then use graphviz to
generate dia output with layout.

If not, how should I start going about making one?

Now that I've ported Fred Morcos' autolayout algorithm to a PyDia plug-in I
can give my usual answer: you should start with a PyDia script ;)
See:
http://svn.gnome.org/viewvc/dia/trunk/plug-ins/python/autolayoutforce.py?view=markup

Also, if I wanted to make it re-arrange the nodes optimally
(graphviz-style)  how easy would that be?

This is the part I usually find hard, at least my amateur attempts on layout
algorithms did not produce results worth publishing. But read on ...

The simplest way is using  springgraph google for the springraph perl
script, it works quite well - my attempts at making it better failed,
it's not graphviz, tho.

A.

-- 
http://www.aarontrevena.co.uk
LAMP System Integration, Development and Hosting



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]