Saturday, August 30, 2008

Sketchpad by Ivan Sutherland

Comments:
1. Nabeel's blog
Summary:
This paper is a description of the Sketchpad system. This system allows the user to draw a shapes with the help of a pen and combination of keys. Author presents an example of drawing an hexagon to explain the concept of subpicture, constraints and copying.Changing the base hexagon changes the appearance of all the shapes that used the copies of the hexagon. A circular list of pointers is used to store the information on subpicture/shape. Garbage collection is performed over the list to remove free blocks. An hierarchy is maintained while storing new shapes. All shapes are grouped in a ring structure under generic. The blocks are further divided into super generic and generic generic blocks. For example: shape related to lines goes under Line with specific features. All the shapes in sketchpad are generated from lines, arcs and circles. These lines and circles are generated using difference equations.Features like Recursive merging, recursive deleting and expanding instances increases scope of sketchpad applications. Sketchpad allows users to add constraints to the system. Each constraint is added as a ring under generic block. Constraint satisfaction is done by a one pass method ,which tries to reduce the errors to zero by adjusting the constraint variables. When it fails, a slow and reliable relaxation method is used.

Discussion:
It would interesting to know the criteria used by the garbage collection algorithm in the system.
This system is similar to the FLUID framework in using the Geometric constraints.While this system uses the geometric constraints to create new shapes and use them to create complex pictures, the FLUID system uses these constraints to identify the ink drawn by user.

No comments: