Towards an Integrated Computer Art System
Mike King

Computer Art Media

Broadly speaking, one can consider existing computer graphics systems for the computer artist as being one of four types:

1. paint systems,
2. drafting systems,
3. solid modelling systems, and
4. user‑programmed systems.

These four types of system can be thought of as representing a range of new creative media for the visual artist. The decreasing cost of raster systems has brought a TV‑resolution paint system down to a cost of about £5000, though a top‑of‑the‑range system can cost around £100,000. Paint systems at the lower end of the price range are appearing in art colleges around the UK and are beginning to be within reach of the free‑lance artist and designer. Vector‑based systems, associated more with drafting packages, still offer the computer artist a powerful medium and many new avenues of exploration. Solid modelling systems have not been explored much in fine art, possibly with the exception of the Rodin system (Nahas and Huitric, 1982), but decreasing costs should again change this. User‑programmed systems cover anything from 8‑bit home micros to mainframes, and computer artists with programming abilities have been exploiting these for around 25 years.

I believe that there are three main reasons for using the computer in visual fine art:

1. increase in productivity,
2. exploration of new types of imagery, and
3. development of the computer as a more equal partner in the creative process.

The paint system certainly allows artists to be more productive, given that they want to produce images with TV (or sometimes higher) resolution and with the range of colours limited by the RGB phosphors in a cathode‑ray tube. To a limited extent I believe that the paint system does also allow new types of imagery to be generated, though the artist is somewhat at the mercy of the range of options provided by the system. Radically new types of imagery are possible if the artist is willing and able to program the system. Possibilities of exploring the computer as a creative partner are opened up through more sophisticated programs, particularly if some approaches from artificial intelligence are adopted.Someof these possibilities have been described by Lansdown (1978, 1980) and Wilson (1983) but are not directly the subject of this paper. 

Synthesis from Primitives and Basic Operations

Nearly all the manipulations within a computer art medium can be considered in terms of synthesis from primitives, where primitives are incorporated into groups and groups of primitives can be moved, deleted, copied and otherwise manipulated. Primitives have various types of attributes, which can be determined before or after incorporation. In a paint system the primitives are the pixel and the free‑hand curve, while the attributes of these primitives are primarily colours. The number of pixels is usually fixed and equal to the horizontal resolution times the vertical resolution. In a drafting system the primitives are the drafting elements such as lines, rectangles, circles and ellipses, which may have attributes of colour, line width and line style. Attributes of groups of elements may also include orientation and scale. Figure 1 shows the primitives available with a simple drafting system called Macdraw (available for the Apple Macintosh). 

Text
 Horizontal/vertical lines
 Rectangles
 Rounded rectangles
 Ellipses
 Quarter arcs of ellipses
 Free‑hand curves
 Polylines

FIGURE 1. Primitives in Macdraw.

1. moving or changing the focus of attention,
2. incorporating a primitive,
3. altering an attribute of an item,
4. finding an incorporated item,
5. defining and labelling a grouping at a given level within a hierarchy,
6. ungrouping an existing grouping at a given level within a hierarchy,
7. removing an item,
8. moving an item,
9. copying an item.

FIGURE 2. Basic operations.

In solid modelling systems a wide variety of primitives may be supplied, though they usually fall under one of two categories: area primitives or volume primitives. 

Whatever the medium, the set of operations required to give the artist full interactive control over it is fairly small. I call these the basic operations (see Fig. 2) and have selected them on the basis of case studies carried out on a variety of commercial systems. In user‑programmed systems the categories (paint/drafting/solid modelling) become more blurred and the basic operations are less clearly defined. 
 
Arbitrary and Algorithmic Synthesis from Primitives

In computer art I like to make a distinction between two approaches to synthesis from primitives: arbitrary and algorithmic. By arbitrary synthesis from primitives I mean any kind of user interaction that results in a sequence of manipulations on the medium that do not have a clear mathematical basis. An arbitrary sequence of the basic operations will not usually be arbitrary to the artiståthey take the artist step‑wise closer to the finished piece. However, the sequence of operations is quite arbitrary to the machine.   

In algorithmic synthesis from primitives the medium is manipulated by operations repeated under some kind of algorithmåfor example, the repeated incorporation of a motif to form a half‑drop pattern. I aim to show that algorithmic synthesis from primitives is related to geometries of various types and is one of the powerful attractions of computer graphics media. 

Interactive and Scripted Computer Media

Another distinction that I like to make in computer graphics is that between interactive and scripted computer media. An interactive medium is one where each manipulation has an immediate effect on the medium, and whose results are clearly visible. The operations in these media are usually carried out with the kind of hand‑eye feedback associated with the traditional visual arts. Paint systems, drafting systems and some solid modelling systems are interactive media in this sense. Scripted media, on the other hand, involve the writing of a script or computer program to create the image, and in this case feedback is provided only after the execution of the program. The script or program is in effect a description for the computer of how to create the image. Development of imagery in scripted systems follows a cycle of write/execute/evaluate/rewrite.   

In general, interactive systems are associated with arbitrary synthesis from primitives, while scripted systems are associated with algorithmic synthesis from primitives. The distinction between interactive and scripted systems can be a little blurred at times and may depend simply on whether an operation on a medium can be carried out fast enough to give immediate feedback to the artist. 

The Computer Artist's Geometrical Toolkit

If an artist wishes to pursue types of imagery which do not involve much geometry, then the interactive systems like paint and drafting systems are ideal and offer increases in productivity and certain new types of imagery. However, to really exploit the computer as a medium, I believe that one needs to explore the areas covered by my concept of algorithmic synthesis from primitives. This can be done within interactive systems to some extent, but at present in‑depth exploration of this area means a scripted systemåor, more prosaically, writing programs.   

When I first looked at the concept of algorithmic synthesis from primitives I gathered together a list of techniques or algorithms that computer artists and scientists have so far developed, and in looking at them I realised that in fact they represented different types of geometries. Robert Dixon, a computer artist who has worked for a time at the Royal College of Art, made this point (Dixon, 1983): "Geometry is the branch of mathematics or more precisely the root, that derives from spatial intuition, and insists upon visual expression of its theory." Scientists have been using computer graphics to give visual expression to mathematical theories for some time now, and, turning the situation around, the computer artists has rich feeding‑grounds for the discovery of mathematics (or geometries) that give rise to interesting visual expression. 

Islamic art is a good example of visual expression that relates very closely to certain types of geometry - the tesselations of the Euclidean plane. Since the time of Pythagoras, on whose geometries Islamic geometry is largely based, mathematics has developed tremendously, and with computer graphics the visual expression of these ideas has become commonplace. I see the development of computer art as being closely related to the use of these geometries, both old and new. Figure 3 lists the algorithms or geometries that I have identified in connection with computer art, under two rather arbitrary headings: classical and recursive geometries.

CLASSICAL GEOMETRIES

 Euclidean geometry of parallel lines, triangles, rectangles and polygons
 conic sections: circle, ellipse, parabola and hyperbola
 nets, bands and tessellations
 non‑recursive functions
 Lissajous figures, cardioids and cycloids
 parametric curves 
	
RECURSIVE GEOMETRIES

 iterative functions (recurrence relations)
 random numbers
 recursive patterns
 fractals and graftals
 particle systems
 growth models
l inear and array grammars
 Markov chains	

FIGURE 3. Classical and recursive geometries.

The distinction between classical and recursive geometries lies in the computing techniques behind them. In a recursive geometry the positioning of gometrical elements such as lines or motifs is the result of successively using the output of one calculation as the input to the next. The classical geometries, while often using some repetitive technique, do not base a given calculation on the previous one. This is a slight simplification, and in fact a recursive geometry can be created without using the programming technique called recursion. To illustrate the idea of a recursive geometry, consider the diagrams in Fig. 4, which show a line segment (initiator) being replaced by a shape consisting of eight line segments (generator). On each "recursion" or generation in the production of the image, each existing line segment (initiator) is replaced by the generator, scaled down to fit. 

 Initiator

         Generator

         One level of recursion

         Two levels of recursion

         Three levels of recursion

FIGURE 4. Recursive (fractal) trees.

There is not space here to describe in detail all these geometries and algorithms or their uses to a computer artist, but I will discuss a few. Nets, bands and tessellations are very important in working with pattern and are well described in Macgregor and Watt (1984). Figure 5 shows a simple net of motifs (motifs placed on a regular grid), while Fig. 6 shows tessellations produced from an interactive program called Tessellator (Addison‑Wesley).

FIGURE 5. A net of motifs.

FIGURE 6. Simple tessellations.

Non‑recursive functions have been important for a long time in computer art. These functions are used to control the x and y position of some primitive (often just a dot or line) and the output is in effect a type of graph of the function. Franke (1971) shows many such images, including his own work, while Leavitt (1976) again shows the work of a variety of computer artists who have used this technique. Figure 7 shows output from a function designed by computer artist Joseph Jacobson ( 1982).

FIGURE 7. Output from a mathematical function.

FIGURE 8. The Mandelbrot set.

Parametric curves, such as the B‑spline, are of importance in computeraided design for automotive and aerospace design and allow the description of curved lines and surfaces from a few control points. These can be very useful to the computer artist (in particular the computer sculptor) and have already been exploited in the Rodin system. The recursive geometries offer the artist imageries and techniques quite unique to the computer, such as fractals and graftals. Figure 8 shows the Mandelbrot set, and Figure 9 shows a simple tree generated from a set of rules known as a grammar and described by Alvy Ray Smith (1984) as a "graftal" -something like a fractal but not quite the same.   

FIGURE 9. A graftal tree.

I see the collection of geometries and techniques listed above as making up a toolkit for the computer artist, a toolkit which is of course open-ended - new developments will continually add to it. The power of these techniques is that they can be combined in ways unique to a particular artist's way of thinking or way of exploring. Output from different techniques can be "matted" together, that is, just overlaid in different ways, or they can be combined in more fundamental ways, where output from one function, for example, may modulate the output from another. Some of the elementary classical geometries are provided within paint and drafting systems, but as soon as the user attempts to create more complex geometrical structures it becomes very difficult. Even the simplest kind of pattern such as a half‑drop often has to be created by copying the motif individually, which is absurd when the programming of such a geometry is a trivial exercise. In order to explore the more complex geometries, such as fractals, the artist is forced firstly to research the techniques and secondly to write programs from scratch to implement them. If the artist wishes to combine various geometries, then again they have usually to be programmed from scratch. 

The Importance of Computer Geometries

The computer offers firstly free‑hand or interactive methods of working, which allow relatively traditional approaches to image generation to be used, and secondly programming approaches. If the artist is going to use programming, then computer geometries, both classical and recursive, open up vast territories for exploration. It is easy to dismiss these techniques as pattern making of a sophisticated kind, but this does not do them justice. Firstly, the image generated from a mathematically or geometrically based program does not have to be the end productåit can be used as a starting point for interactive techniques as in a paint system. Figure 10 illustrates this with an image that started as the fractal trees of Fig. 4.   

FIGURE 10. "Treescape 1."

Secondly, mathematical and geometrical patterns have a profundity about them due to the fact that they describe laws of nature. This, of course, is the attitude of the Islamic artist, who sees the geometries in terms of cosmology and astrology. Richard Voss, in an article on fractals (Voss, 1985), quotes Galileo: 

Philosophy is written in this grand book - I mean universe - which stands continuously open to our gaze, but it cannot be understood unless one first learns to comprehend the language in which it is written. It is written in the language of mathematics, and its characters are triangles, circles and other geometrical figures, without which it is humanly impossible to understand a single word of it; without these, one is wandering about in a dark labyrinth. 

Richard Voss and Benoit Mandelbrot (1982) - the discoverer of fractals - believe that fractal geometry is in fact more suitable for a description of the world than the traditional geometries. An artist will probably not directly agree with Galileo, but the fact remains that geometries of various kinds have been tremendously important in the development of fine art. For example, the golden mean as a geometrical entity has been at times elevated to the stature of religious symbolism. In our present culture, fractal geometry and the recursive geometries that I have outlined above are less likely to be regarded in a religious or mystical sense (though some might do so) but are more likely to be considered in relation to aesthetics. I believe that we can learn from the Islamic artists, and other religious artists of Christian, Hindu and Buddhist traditions, methods of using geometries in an aesthetic manner. In Islamic art, for example, much is made of the balance between the "crystalline" and the "biomorphic," that is, between the geometrical and the more whimsical or organic elements (Critchlow, 1976). This relates very well to the development of imagery where one uses computer geometries to generate an image which is then added to or further manipulated using arbitrary synthesis from primitives (as in a paint system). Figure 11 shows a Mandelbrot set which I have "modified." 

FIGURE 11. "Tongue in Mandelbrot's cheek."

Proposals for an Integrated Computer Art System

If one accepts that computer art needs both the interactive "arbitrary" approach and the algorithmic computer geometries, then what kind of system allows the artist to exploit and mix these methods? The answer, at present, is that no such system exists and that many existing systems work against this approach, either by being "closed" paint or drafting packages which cannot be extended with the various geometries or by being programming environments with no interactive components. A system that offered both approaches could be called an integrated computer art system, or ICAS for short. The system that comes closest to being an ICAS is the Juno system built by Greg Nelson (1985) as a prototype. This is an interactive drafting system with a scripted component where geometrical entities can be specified using a simple language of "constraints." The use of constraints represents an attempt to develop a more powerful programming language than the usual languages such as BASIC, Fortran and PascalåI refer to this as "scripting at a higher level." 

An ICAS should incorporate all the geometries so far discussed and allow interactive synthesis at many different levels (solid modelling, drafting and painting). Analysis, in the form of image processing, or other methods of taking data from the real world must be catered for. An ICAS should offer:

Interactive and scripted components, including solid modelling, drafrting, and painting.
Image-grabbing and image analysis.
Graphics hardware for bit-blitting and similar operations (moving chunks of picture).
A general programming environment.
Scripting at a higher level such as constraints for classical and recursive geometries.
Frame-buffer output and vector outut to plotters.

In working with an integrated system one could just use the paint system facilities if desired, but a more usual route would be to start at a more modelled level of construction. One could, for example, script a geometrical algorithm which would allow many possible types of output and rendered image; this script would act as the most abstract description of a series of images. At a lower level one might take the output of the script (for example a sequence of vectors) and manipulate these with drafting techniques. Finally, a single image could be created by taking the output from the drafting part of the system into the painting part, where the image can be manipulated on a pixel basis - for example, using flood-filling and the creation or addition of "biomorphic" elements, as in the Mandelbrot set example of Fig. 11.

Other routes would include three-dimensional modelling, the use of standard visual realism techniques and the integration of different elements within the geometrical toolkit. Yet another starting point could be with a frame-grabbed image and the manipulation of this data in various ways. Analysis of such an image could be the start of a Markov chain approach to generating imagery or even just the creation of texture for certain purposes. An interesting technique devied by Brian Reffin-Smith while at the Royal College of Art was to calculate the angle of a line segment based on the pixel value in a frame-grabbed image and output the results onto a plotter.

I have concentrated so far on the computer artist rather than the designer or graphic designer. I believe, however, that the untrammelled explorations of the computer artist will have an impact on the vocabulary, certainly of the graphic designer, who will make increasing use of the computer even for the most trivial and conventional of briefs, and also on the product designer and architect. If a revival of interest in ornament in architechture and design should take place, then the computer will be at its centre and should have a profound inpact on its nature. Algorithmic synthesis from primitives and the elements of the geometrical toolkit could bring about a new interest in decoration and ornament, but with a contemporary style.

Conclusions

The computer offers interactive or free‑hand techniques and also programmed approaches which allow the exploration of more sophisticated computer geometries. An integrated computer art system would incorporate features from the major interactive systems with a scripted or programmed component, allowing the artist to explore both traditional geometries and those which arise from recent research in mathematics, physics and biology. I believe that widespread use of such systems would make commonplace a new visual vocabulary, which would have an impact at the least on areas traditionally involved with pattern‑making. 

References

Critchlow, K. (1976) Islamic Patterns. Thames & Hudson. 
Dixon, R. (1983) "Geometry Comes Up to Date", New Scientist 98(1356), May 5:302‑305. 
Franke, H. (1971) "Computer GraphicsåComputerArt" Phaidon. 
Jacobson, J. ( 1982) "Analytical Computer Art," 1982 IEEE Symposium on Small Computers in the Arts, pp. 47‑55. 
Lansdown, J. ( 1978) "The Computer in Choreography," IEEE Computer, August, pp.l9‑30. 
Lansdown, J. ( 1980) "Is the Computer a Tool?: The Question in an Art Context." in B. Sundin, ed., Is the Computer a Tool? Almqvist & Wiksell, Stockholm. 
Leavitt, R. (1976) Artist and Computer. Harmony Press. 
Macgregor, J. and A. Watt (1984) TheArt of Microcomputer Graphics. AddisonWesley, Reading, Mass. 
Mandelbrot, B.B. (1982) Fractals: Form, Chance and Dimension. Freeman, San Francisco. 
Nahas, M. and H. Huitric (1982) "Computer Painting with Rodin," 1982 IEEE Symposium on Small Computers in the Arts, pp. 95‑103. 
Nelson, G. ( 1985) "Juno, a Constraint‑based Graphics System," Computer Graphics 19(3):235‑243. 
Smith, A.L. ( 1984) "Plants, Fractals and Formal Languages," SIGGRAPH 84, pp. 1‑10. 
Voss, R.F. (1985) "Random Fractal Forgeries." In R. A. Earnshaw, ed., Fundamental Algorithms for Computer Graphics," NATO ASI Series. Springer‑Verlag, New York. 
Wilson, S. (1983) "Artificial Intelligence in the Arts," Leonardo 16(1):15‑20.