In my last paper, I pointed out that in on-line displays, there is
little sense of "scale," that is, the actual (real life) size of an
object. Instead, there is the creeping suspicion among users that
everything is about twelve to fifteen inches high, or about the size
of their computer screen. Without some sort of external cue, the
project of figuring out the scale of an object is nearly
impossible. To return to my previous examples, Seurat's Le Grande
Jatte is nearly 20 feet long, but since it is most commonly
seen poster-sized, many people think it really is poster sized. By
being able to display it with a one-foot mark, people would get a
sense of the true scale of the object. Also, looking at Van Ecyk's
Arnolfini Marriage, people might think from the extreme detail
it was fairly large; perhaps even life-size. Instead, it really is
only about two or three feet high, and the detail is a sign of the
artist's extreme care.
I want to try to fix this through an experimental interface. This
interface will attempt to provide scale information in one of two
ways. These ways are not mutually exclusive; they are both useful
depending on the situation.
- The Bug Splat Interface
- The Bug Splat interface (a refinement of an earlier version
called "Lucky Charms") puts in a corner of the image a small scale
icon. The icon is simply a right angle, where the two arms are a set
distance. For very small objects, the one arm may span 1 mm, while for
larger objects, it would span 1 m, or for map type applications, it
would span 1 km. In the middle of the right-angle, there would be text
indicating the scale at hand, for instance, "mm," "m," or "km." Later
revisions may change the way this information is presented, as well as
letting the user pick a different scale, like US Standard
The use of the right angle is important, since a lot of scanned images
often do not have square pixels. Even though the screen they are being
displayed on may have true square pixels, this allows the system to
work with as many different displays as possible. Each side of the
right angle is scaled separately.
- The Click and Drag Interface
- The Click and Drag interface is a more active version of the Bug
Splat interface. The Bug Splat literally has the interactivity of a
dead insect (it's either there, or it isn't; it really doesn't
do much else.) The click-and-drag instead allows the user to
click in the image, and then drag. As the user drags in the image, a
display shows the distance the user has dragged.
This interface has clear applications in more "scientific" fields,
where distance and scale needs to be measured. In mapping
applications, this allows the user to quickly find out the distance
between two objects.
At this point, only the crow's-flight distance (hypotenuse) will be
displayed. However, it is a trivival change to display the x, y, and
direct distances, since the X and Y distances need to be calculated in
order to find out the direct distance.
This system will be implemented in Java, Sun's byte-code compiled
language. The exposed interface will be pretty simple. The Java applet
will be passed an image path for the server, as well as an x-width (in
milimeters) and a y-height (also in milimeters). A future revision of
this will have the applet query a remote database for this
information, but this is for a more general form of the interface that
will also provide additional forms of interaction.
The calculations are not particularly hard -- to do the Bug Splat
interface, it is a simple proportion multiplier, and for the click and
drag, it's a proportion and pythagorian theorem. None of these should
be particularly taxing on either the run-time system or the
The final version of the applet, as well as instructions on how to run it,
can be found here.