Discussion:
Finite State Machine Diagrams
Nick Matsakis
2003-08-08 15:35:01 UTC
Permalink
I'd like to draw finite state machine diagrams like the ones in this
image: Loading Image...
Actually, I'd like to draw FSM diagrams that are much more beautiful than
the ones in that image, and Omnigraffle was *born* to do this kind of
thing.

The thing that I can't figure out, however, is how to constrain the
connecting arrows to follow elliptic curves rather than straight lines or
Bezier curves. In other words, I'd like to be able to do the nice
circular self-edges from the diagram I linked above as well as the arcing
edges between states. If I try to do this with the Bezier lines in OG,
they either look too pointy (if I put few control points) or they look too
squiggly if I do lots of control points.

I think what I want, is a new line type, which is curved. The line should
have the property that it follows one half of an ellipse which passes
through the centers of the two shapes it passes through (maybe it could be
arbitrary magnets, but I'd be happy with centers as FSM diagrams are just
circles). It needs one more parameter, which is the radius of its minor
axis.

If anyone has done this without the new feature, how did you do it? If
not, could this be considered a feature request?

Nick Matsakis
Andrew Shugg
2003-08-09 10:54:00 UTC
Permalink
Post by Nick Matsakis
I think what I want, is a new line type, which is curved. The line
should
have the property that it follows one half of an ellipse which passes
through the centers of the two shapes it passes through (maybe it
could be
arbitrary magnets, but I'd be happy with centers as FSM diagrams are
just
circles). It needs one more parameter, which is the radius of its
minor
axis.
If anyone has done this without the new feature, how did you do it? If
not, could this be considered a feature request?
There was a vaguely similar question (about doing curves as part of
shapes), and we were told that feature might be in OG 4. You can do a
search on "curves" in the list archives and find the message I'm
referring to. The thread in question was titled "how to do..." and Wil
Shipley's post on the topic was on Apr 18, 2003.

Elliptical curves would be nice (in the "pretty" sense) but they might
make the layout stuff quite awkward.

In the short term you may be able to create a stencil of open curves
(half circle, quarter circle, three-quarter circle, ellipse etc) using
the tutorial referenced in Wil's message.

Andrew.
--
Andrew Shugg <***@mac.com>
ObDotMacHome <http://homepage.mac.com/ashugg/>
Nick Matsakis
2003-08-09 16:04:01 UTC
Permalink
Post by Andrew Shugg
There was a vaguely similar question (about doing curves as part of
shapes), and we were told that feature might be in OG 4.
While I would like to be able to make shapes that are arbitrary curves,
I'm talking about curved lines. I think these would be easier to do,
though the UI could be tricky.
Post by Andrew Shugg
Elliptical curves would be nice (in the "pretty" sense) but they might
make the layout stuff quite awkward.
I don't think so; shapes would still be placed where the algorithms place
them, and then you would just draw curved lines instead of straight ones.
Post by Andrew Shugg
In the short term you may be able to create a stencil of open curves
(half circle, quarter circle, three-quarter circle, ellipse etc) using
the tutorial referenced in Wil's message.
Well, I'm more interested in curved lines than curved shapes. I can
sort of fake what I want now buy using shapes, though I manually have
to place the arrows and the intersections and the shadows are hard to
work with...

Nick Matsakis

Continue reading on narkive:
Loading...