Home

Easily Adding Animations to Interfaces Using Constraints


Author(s) : Rich Mcdaniel Robert C. Miller Brad A. Myers Alan Ferrency, 
Publisher : N/A
Publication Date : 1996
ISSN : N/A
Abstract : Adding animation to interfaces is a very difficult task with today's toolkits, even though there are many situations in which it would be useful and effective. The Amulet toolkit contains a new form of animation constraint that allows animations to be added to interfaces extremely easily without changing the logic of the application or the graphical objects themselves. An animation constraint detects changes to the value of the slot to which it is attached, and causes the slot to instead take on a series of values interpolated between the original and new values. The advantage over previous approaches is that animation constraints provide significantly better modularity and reuse. The programmer has independent control over the graphics to be animated, the start and end values of the animation, the path through value space, and the timing of the animation. Animations can be attached to any object, even existing widgets from the toolkit, and any type of value can be animated: scalars, coordinates, fonts, colors, line widths, point lists (for polygons), booleans (for visibility), etc. A library of useful animation constraints is provided in the toolkit, including support for exaggerated, cartoon-style effects such as slow-in-slow-out, anticipation, and followthrough. Because animations can be added to an existing application with only a single extra line of code, we expect that this new mechanism will make it easy for researchers and developers to investigate the use of animations in a wide variety of applications.,