31.05.2013 Views

think-cell technical report TC2003/01 A GUI-based Interaction ...

think-cell technical report TC2003/01 A GUI-based Interaction ...

think-cell technical report TC2003/01 A GUI-based Interaction ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

3.2 Computer Supported Layout STATE OF THE ART<br />

idea of snapping the drawing caret to prominent locations. To determine geomet-<br />

rically prominent locations, snap-dragging uses the ruler-and-compass metaphor<br />

traditionally used by draftsmen. Based on explicit hints given by the user and some<br />

heuristics about typical editing behavior, snap-dragging constructs transient align-<br />

ment objects – points, lines and circles – on the fly. A gravity function drags the<br />

caret to align with one or more of these objects, enabling fast and accurate drawing<br />

with little time spent in moving the tools and setting up the construction.<br />

Bier and Stone’s snap-dragging forgets about the relationships between shapes<br />

immediately after a shape is constructed, whereas Gleicher [Gle92] takes snap-<br />

dragging one step further and presents augmented snapping. Roughly spoken, in<br />

Gleicher’s prototype system Briar the snap-dragging technique is used to specify<br />

constraints that are maintained from then on. This way, geometric relationships be-<br />

tween drawing objects are invariant against editing operations like drag-and-drop.<br />

The specification of constraints through direct manipulation implies important sim-<br />

plifications compared to traditional constraint-<strong>based</strong> systems: Because constraints<br />

start out satisfied, there are no constraint-satisfaction problems to solve or state<br />

jumps to explain. There is no concern about conflicting or unsatisfiable constraints,<br />

since there exists at least one configuration which meets the constraints.<br />

An essential feature of snap-dragging as well as augmented snapping is the im-<br />

mediate on-screen feedback to user actions and intentions. In snap-dragging, align-<br />

ment objects are visualized such that they can easily be distinguished from concrete<br />

objects. In augmented snapping, the effect of applying a drag-and-drop operation<br />

while existing constraints are being maintained, is continuously displayed during<br />

the dragging action.<br />

Other systems have been realized that support quick and geometrically precise<br />

drawing without using any grid or gravity function and without the explicit no-<br />

tion of constraints. Notably, Igarashi et al. have demonstrated various work in this<br />

field. Interactive beautification [IMKT97] infers relations between new strokes and<br />

existing line segments and thus generates geometrically accurate 2D shapes from<br />

plain and generally imprecise drawing input. In contrast to snap-dragging, inter-<br />

active beautification “beautifies” an irregular input stroke after it has been drawn.<br />

Relations between the new stroke and existing objects are not explicitly shown. In<br />

Teddy [IMT99], on the other hand, two-dimensional drawing gestures are “inflated”<br />

into 3D models. Because the user interface is entirely <strong>based</strong> on direct manipulation<br />

gestures, no traditional UI widgets – buttons, sliders, menus, dialogs – are required<br />

for 3D construction using this technique.<br />

Support for imprecise mouse movement and maintenance of spatial relations<br />

between on-screen objects is not restricted to the domain of freehand drawing. In<br />

[BNB00], Badros et al. present SCWM, an “intelligent constraint-enabled window<br />

manager”. SCWM is a window manager for the X window system that handles<br />

relations between windows and enforces them when windows are moved or resized.<br />

SCWM implements a UI for constraint specification and visualization of active con-<br />

straints. Constraints are implicitly inferred by augmented snapping and explicitly<br />

30

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!