A two-dimensional view controller

  • Authors:
  • Andrew S. Glassner

  • Affiliations:
  • Xerox Palo Alto Research Center, Palo Alto, CA

  • Venue:
  • ACM Transactions on Graphics (TOG)
  • Year:
  • 1990

Quantified Score

Hi-index 0.00

Visualization

Abstract

Description: Many two-dimensional graphics programs provide a user with a rectangular screen window for viewing a two-dimensional image. Common examples of this underlying “world” image include text, line, or shaded pictures, and plots of one- or two-dimensional functions. Typically the screen image cannot display the world image with a 1:1 ratio between screen units (pixels) and the smallest resolvable world units. Thus the screen image is typically scaled and panned across the world image. The scaling is often differential, i.e., different scaling factors are applied in X and Y. Suppose a user is viewing a function y = f(x) at a ratio of 1:1. Increasing the scale factor in X will bring more data into view, while retaining vertical amplitude; increasing the scale factor in Y will provide a finer view of the values of the function, while retaining the range plotted.We have developed a compact control device which allows a user to continuously adjust the aspect ratio of the world data presented to the window. Our model is based on the projection of the window on the untouched world data. If the screen window is narrow and tall in the world data, then the world data will be expanded horizontally and compressed vertically when displayed on the screen (note that the window itself never changes size on the screen). Accompanying the aspect ratio selection is a zoom multiplier, which can uniformly grow or shrink the screen window's image in the world. We also include variable-speed scrolling controls. Scrolling and uniform zooming are decoupled from differential scaling. The advantage of our technique is that the user need not independently scale X and Y while searching for the proper scaling of data; although both may be adjusted individually, and may also be adjusted simultaneously in a coupled, single-position device. Thus a single-button input device (such as a mouse) is all that is needed to control any aspect of the display. The technique has the additional advantage of being nonmodal, so the user need not remember any state during operation.