Here, the type of graphical data entered is of a mixed iconic and
structural representation. Mostly, the use of the drawing itself is rather
useless without textual annotation and clarification. The algorithms
involved here try to detect basic shapes from a library (i.e., lines,
triangles, circles, rectangles, squares, etc.) and replace the sloppy input
with the nearest neat library shape of the same size. Provisions are
needed for closing holes and interactively improving the drawing. The
systems are mostly object oriented in the sense that the objects have
``widgets'': anchor points to tap on for resizing and moving. Basic rules
for "neatness" are usually applied, like making connections to a side of a
rectangle only on anchor points at of the length of
that side. This property is sometimes called ``magnetic joining''.
Research in this area dates from the late sixties, were combinations of
flow-chart entry and programming in Fortran were studied.