  
aiSee employs two different animation concepts.
First, some internal layout calculations can be animated under the control
of some options. Second, the entire aiSee tool can be used as an
animation handler which animates a sequence of graph specifications.
(Note that this has nothing to do with the
-multi option.)
Animation of layout phases (aka smooth transitions)
If
a new layout is calculated for a graph and if animation of layout phases is turned on, the
nodes move smoothly from their initial positions in the layout to the newly calculated ones,
enabling the user to keep visual track of layout changes. (See example,
27kB). The GDL graph attribute amax: Int specifies the maximum number of
animation steps. This number can be changed interactively in the
View dialog box. Specifying
0 means animation is turned off.
Animating graph specification sequences
aiSee
can be used as an animation handler to animate a sequence of graph specifications. For example,
a program can continuously output GDL specifications to a file. When the program has produced
one instance of output, it informs aiSee that the graph specification is available.
Then aiSee displays the new instance of the graph. After visualization, aiSee
indicates completion to the program generating the graph specifications, thus enabling the
program to output the next graph specification.
Consequently, the program and aiSee represent a client-server model.
The program calls aiSee with the option -a Int.
After relayout, aiSee sleeps for Int seconds, then it attempts a
callback to the parent process. aiSee has to have been started with the option
-ddemsg (Windows) or -x11msg (Unix).
Then the program and aiSee communicate with one another as a server and client.
The Windows version communicates over a Dynamic Data Exchange (DDE) channel, the Unix
versions use user signals.
Here is an example of a Unix shell script that uses aiSee to animate
all GDL-files in the directory it is called from:
#! /bin/sh
files=`ls *.gdl`
tmpnam=`mktemp /tmp/temp.XXXXXX`
cat <<EOM > $tmpnam
graph: { title: "" }
EOM
aisee -a 1 $tmpnam &
pid=$!
sleep 2
for f in $files; do
echo $f
cp $f $tmpnam
kill -s SIGUSR1 $pid
sleep 3
done
rm $tmpnam
kill $pid | | |
The following command line options are available:
-a Int Starts aiSee as
an animation handler. After relayout, aiSee sleeps for Int
seconds then attempts a callback to the parent process. There are three different callbacks,
the callback method being controlled by the options -callback,
-sigback (Unix only), and -touchback
(Unix only).
-callback The parent process
is contacted after each relayout by the X11 event ClientMessage (Unix) or by
Windows interprocess communication routines. Communication between the parent
process and aiSee doesn't work unless aiSee was started with the
option -x11msg (Unix) or -ddemsg
(Windows).
-sigback The parent process is
contacted after each relayout by the SIGUSR1 signal (Unix only).
Note: SIGUSR1 causes aiSee to reload the GDL file, with
SIGUSR2 causing aiSee to close its main window.
-touchback The parent process is
contacted after each relayout by accessing the specification file (Unix only), i.e.
it gets a new time stamp.

|
 |

Home
About
Examples

Free trial
» DDE demo
» Animation
» aiCall
» StackAnalyzer
» aiLink
» Excel2GDL
» Apache2GDL
» dot2GDL
» Matrix2GDL

Support
Store
Legal
Contact
Extras
Sitemap
|