Pictures: A Structured Graphics Model

  • Sigbjorn Finne ,
  • Simon Peyton Jones

Published by Springer-Verlag

Publication

We present a simple, device independent model for describing two dimensional raphics using a functional language. Graphical scenes or pictures are represented as values that functions can manipulate and inspect to create new values. Complete pictures are constructed by repeatedly composing such picture values together using picture combinators. A novel aspect of the model presented is its use of structured translation to abstractly express the geometric composition of arbitrary pictures. The structured graphics model presented has been implemented in Haskell, and we also give an overview of a general rendering framework for traversing a picture value. Applications of this renderer include both output to various graphical systems, testing for picking or selection of a picture and the computation of the bounding box of an arbitrary picture. The graphics model forms the basis for all graphical output in a user interface framework being developed in Haskell.