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.