SDM: Selective Dynamic Manipulation of Visualizations

advertisement
Interaction
Jing Li
CPSC 533C
March 3, 2003
Overview
Toolglass and Magic Lenses: The SeeThrough Interface (1993)
by Eric A. Bier, Maureen C. Stone, Ken
Pier, William Buxton, Tony D. DeRose
SDM: Selective Dynamic Manipulation of
Visualizations (1995)
by Mei C. Chuah, Steven F. Roth, Joe
Mattis, John Kolojejchick
Toolglass and Magic Lenses
The see-through interface that can appear
as though on a transparent sheet of glass
between the application and the traditional
cursor.
These tools create spatial modes that can
replace temporal modes in user interface
systems.
Introduction
Toolglass widgets: semi-transparent interactive tools that
are used in an application work area, and appear on a
virtual sheet of transparent glass called a Toolglass
sheet.
The user can line up a widget, a cursor and an
application object in a single two-handed gesture.
A widget that has been stretched across the entire work
area creates a command mode.
User can move sheet over application object or move the
object to a widget (trackball can control both sheet and
scrolling).
Figure 1. Click-through buttons. (a) Six wedge objects. (b) Clicking through a green
fill-color button. (c) Clicking through a cyan outline-color button
Introduction (Cont.)
Many widgets can be placed on a single sheet
Widgets and lenses can be composed to create
a number of specialized tools from a basic set
(e.g. an outline color palette over a magnifying
lens, to point to individual edges)
Figure 2. A sheet of widgets. Clockwise from
upper left: color palette, shape palette,
clipboard, grid, delete button, and buttons
that navigate to additional widgets
Figure 3. An outline color palette
over a magnifying lens
Related Work
Multi-Handed Interfaces
Movable Tools
– Menus that pop up at the cursor position
– Toolglass sheets can be moved without tying up the
cursor
Transparent Tools
– Make menus over the work area transparent
Viewing Filters
– Magic lenses are visual filters that may be used to
change type of views or reveal hidden information.
Examples
Shape and Property Palettes
Figure 4. Shape palette.
(a) Choosing a shape.
(b) Placing the shape.
Figure 5. Font face palette. The word "directly"
is being selected and changed to bold face.
Examples (Cont.)
Clipboards
Figure 6. Symmetry clipboard.
(a) Picking up an object.
(b) Rotated copies appear.
(c) The copies are moved and pasted.
Figure 7. Fill-color rubbings.
(a) Lifting a color.
(b) Moving the clipboard.
(c) Applying the color.
Examples (Cont.)
Previewing Lenses
Figure 8. An achromatic lens over a drop shadow lens over a
knotwork. (Knotwork by Andrew Glassner)
Examples (Cont.)
Selection Tools
Figure 9. Vertex selection widget.
(a) Shapes.
(b) The widget is placed.
(c) A selected vertex.
Figure 10. The local scaling lens that
shrinks each object around its own
centroid (Tiling by Doug Wyatt)
Examples (Cont.)
Grids
Figure 11. Three grid tools
Examples (Cont.)
Visualization
Figure 12. Gaussian curvature pseudo-color lens with overlaid
tool to read the numeric value of the curvature. (Original
images courtesy of Steve Mann)
Implementation of
Toolglass Sheets
Multi-Device Input and Screen Refresh
– Handles simultaneous input from two pointing devices
and updates the screen after multiple simultaneous
changes
Filtering Input Through Lenses and Widgets
– Modifies pointing events as they pass through
widgets
Filtering Output Through Lenses and Widgets
– Modifies graphical output as it passes up through
each widget
Implementation of
Magic Lens Filters
Recursive Ambush
– catch the low level drawing calls
typically a wrapper around the graphics context
– and modify them, and then call the original
graphics primitive
e.g. modify “DrawLine” to set the color to “red”
– works transparently across all applications
– but complicated to make a new lens and
debug
Implementation of
Magic Lens Filters (Cont.)
Model-In Model-Out
– create new objects and transform them
can be saved and used by any lenses over it
– very powerful, but
must allocate storage
cross application is an issue
Implementation of
Magic Lens Filters (Cont.)
Reparameterize & clip
– Modify global parameters to drawing
– Redraw the model, but clipped to the
boundary shape of the lens
– Best example: scaling
Implementation of
Magic Lens Filters (Cont.)
Multiple model types need to be supported
for cross-application functionality.
Achieved by:
– Type conversion: convert the model to be of
the type required
– Type tolerance: unchanged if does not
understand a model
Toolglass & Magic Lens
Conclusions
See-through interface based on spatial modes
Structured well for two-handed interaction
May be integrated into any screen-based
applications and tools
SDM: Selective Dynamic
Manipulation of Visualizations
Mei C. Chuah, Steven F. Roth,
Joe Mattis, John Kolojejchick
(Carnegie Mellon University)
Motivation
• Need new interactive techniques for 2D and 3D
visualizations. We want:
– Selective: a high degree of user control
– Dynamic: interactions all occur in real time,
and interactive animation
– Manipulation: Users can directly move and
transform objects to perform different tasks
• This set of techniques is called SDM
Current Static Visualization
• Users cannot focus on specific object sets in
detail while keeping them in the larger context
• Clutter and occlusion (hidden data) in dense
information space
• Difficult to give a sense of scale: some objects
may be dwarfed in the scale used for the entire
data set (green objects in [Figure 1])
• No tools provided to classify data sets and save
those classifications
• Difficult to compare quantities when objects are
not spatially contiguous (e.g. when objects are at
different distances from the user)
SDM Sample
• SDM deals with these issues
• Selection and control methods rely on objects
rather than spaces.
Sample: Supply Distribution Network
•
•
•
•
Cylinders (red) : supply centres
Rectangular bars (purple) : shelters
Lines (black) on the floor plane : major routes
Heights of cylinders and bars : quantities available at supply centres
and needed by shelters
• Selected objects : green
SDM Components
• Object Centered Selection
– Select objects by clicking or using sliders to
place data constraints
– Object sets may be named, saved and used
later from a scrollable menu
– Object sets need not be made up of
homogeneous types (e.g. a set may contain
supply centers, shelters, and routes)
SDM Components (Cont.)
• Dynamic and
Flexible Operations
– Directly manipulate
through object handles
– Attach a handle to an
object, and push or pull
on it: causes the object
to expand, shrink or
move continuously
– Objects change with
motion of handles
(A) controls the radius of
cylinder object
(B) controls object height
(C) controls bar width
– Arrow handles: shift
SDM Components (Cont.)
• Object Constraints
Context persistence
– SDM maintains some relationship between the
focus objects set and its environment.
Set-wide operations
– If you can move or scale one object in a focus
set, you can move or scale any other object in
this set.
SDM Feedback Mechanisms
• Clearly Identify the
Selected Set
– The selected set is painted
differently (green)
– A white grid may be drawn
beneath all selected objects
to indicate positions and
spread
• Maintain Scene Context
– Used to maintain context
when objects are displaced
– Object ‘body’ (green) and
object ‘shell’ (white)
Feedback Mechanisms (Cont.)
• Maintain Temporal Continuity
– Use animation to help users to perceive
changes to the scene
• Maintain Relationships Between the
Selected Set and the Environment
– Keep a scale of the differences on screen, for
example, the ratio axes technique (next slide)
• Allow Objects to be Easily Returned to
Their Home Positions
Ratio Axes Technique
Scale of the environment (black) & the selected set (red)
The left is 1:1; the right is 1:8
SDM Solutions
• Focusing on a Select Set of Objects while Keeping Scene
Context
– Objects can be painted distinctly and the width can be increased
– Users may shift all focus objects to the front of the scene
SDM Solutions (Cont.)
• Viewing and Analyzing Occluded Objects
– Selected object set is elevated to solve occlusion
problem
SDM Solutions (Cont.)
– Reduce the heights of unconcerned objects to zero
– Make all unconcerned objects very thin
SDM Solutions (Cont.)
• Viewing Different Sets of Elements Based on Different
Scales
– Ratio axes technique (mentioned above)
• Interactively Augmenting the Visualization with New
Classification Infomation
– Add width and color, save as a set and apply them later (i.e.
identify important shelters)
SDM Solutions (Cont.)
• Comparing the Patterns, Widths, and Heights of Objects
– Draw a line of reference in the scene plane and move any set of
objects to the reference line
– Compare data trends among multiple sets
SDM System Architecture
SDM Conclusions
• Good interactive techniques deals with the
issues from current static visualizations
• Visualization is clear, precise and easy to
understand
• The goal of SDM is to provide users with
enough tools and flexibility (multiple
alternative solutions) that they can solve a
wide spectrum of data analysis tasks.
Download