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 measurements.

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 programmer.

End Result

The final version of the applet, as well as instructions on how to run it, can be found here.