tual content. Moreover, side-by-side comparisons of
graphics embedded in hypermedia documents are of-
ten preferable for presentation purposes and can only
be achieved by synchronizing multiple graphics.
In this work, we developed an interface to specify
the synchronization of multiple illustrations by ana-
lyzing basic properties and requirements of the syn-
chronization mechanism. This allowed us to reduce
the interface to the definition of a few (optional)labels
per graphics. These text labels are not subject to any
syntax; thus, no syntax errors are possible and authors
do not have to learn any syntax rules or restrictions.
Instead, the labels may be chosen arbitrarily and are
only tested for equality. We also present a prototyp-
ical implementation of this interface within the Java
applet LiveGraphics3D.
2 RELATED WORK
A survey of approaches to interactive illustrations in
electronic documents has been published by Kraus
(Kraus, 2008) with particular emphasis on the imple-
mentation of parametrized graphics within the Java
applet LiveGraphics3D (Kraus, 2002), which renders
Mathematica
graphics (Wolfram, 2003) with several
restrictions. The “Wolfram Demonstrations Project”
(Wolfram Research, 2008) provides a web platform
to archive and distribute more general interactive
parametrized graphics than supported by LiveGraph-
ics3D, i.e., arbitrary
Mathematica
graphics (Wolfram,
2003).
Communication between Java applets, which is
necessary for synchronization, has been discussed, for
example, by Andrew Meckler (Meckler, 1997) and
has been implemented in various Java applets for in-
teractive web graphics, e.g., “Jmol” (Jmol, 2008) and
“Modern CA” (ModernCA, 2008).
3 SYNCHRONIZING
PARAMETRIZED GRAPHICS
There are various ways of specifying synchroniza-
tions of interactivegraphics, which differ significantly
in the syntactical overhead as well as in their ex-
pressive power regarding the specification of different
kinds of synchronizations, e.g., master-slave relations
or selective synchronization of particular state vari-
ables.
In this section, we first discuss some features of
the synchronization of parametrized graphics, which
are particularly important since they determine the re-
quired expressive power of an interface for the speci-
fication of synchronized graphics. Based on this dis-
cussion, we develop the structure of our proposed in-
terface.
3.1 Properties of the Synchronization
3.1.1 Symmetric vs. Asymmetric
Synchronization
If the interface only allows for the specification of
symmetric synchronizations of parametrized graph-
ics, no “master-slave” relation can be specified, where
one graphics, the “master,” is manipulated and a sec-
ond graphics, the “slave,” follows the changes while
manipulations of the “slave” are not forwarded to the
“master.” However, in almost all actual scenarios
symmetric synchronizations are sufficient as can be
shown by considering the following two cases:
1. The “slave” cannot be manipulated. In this case,
there is no difference between a symmetric syn-
chronization and a “master-slave” synchroniza-
tion because the “slave” never produces events
that have to be synchronized.
2. The “slave” can be manipulated. In this case,
there is a clear difference between a symmet-
ric synchronization and a “master-slave” synchro-
nization. In particular, there are some disadvan-
tages of the latter: Firstly, the states of the “slave”
and the “master” may be different, i.e., unsyn-
chronized. And secondly, if the states of the two
graphics are different and the “master” is manip-
ulated, the state of the “slave” changes discontin-
uously due to the synchronization. Thus, this sce-
nario is usually highly undesirable.
We conclude that the “master-slave” synchroniza-
tion of parametrized graphics is unnecessary since it
is either indistinguishable from a symmetric synchro-
nization or results in inconsistent states and discontin-
uously changes of the state of the “slave.”
3.1.2 Independently Synchronized Groups
Suppose there are four graphics A, B, C, and D in
a single document. (See also Figure 1.) In many
cases, only a subset of all graphics should be syn-
chronized, which might, however, consist of more
than two graphics. It is also conceivable that multiple
subsets should be synchronized independently, for ex-
ample, it might be necessary to synchronize the pair
{A, C} independently of the pair {B, D}. Thus, it is
necessary to allow for the specification of any number
of independently synchronized subsets of any size.
GRAPP 2009 - International Conference on Computer Graphics Theory and Applications
402