The Mathematics of Computer Graphics
The Mathematics of Computer Graphics
116
I omputcr
tion and manipulation. Informationally complete the locations of the joins as they appear in the
representations would enable any well-defined geo- picture generated initially. Franklin (1986) notes
metrical property of any represented object, or set the same problem when different algorithms are
of objects, to be calculated automatically. Requi- being used in the same picture - producing missing
cha and Tilove (1978), Requicha (1980), and Re- and spurious pixels, the tell-tale signs of anoma-
quicha and Voelcker (1982, 1983) summarise some lous behaviour. What is needed is a more consis-
of the early approaches to solid modelling. Aspects tent and unified approach based on a rigorous
of modelling and computational geometry of cur- model, with uniform operations.
rent interest are domain extensions for modellers; A further example given by Forrest (1985) high-
handling dimensioning, tolerances, and geometri- lights the complex scenario in evaluating the seem-
cal constraints; algorithms for rapid editing; null ingly simple case of the intersection of two lines.
object and interference detection; conversion from Careful attention to numerical detail is required
one representation into another; analysing the and also a consistent ordering of geometric opera-
complexity of geometric algorithms; and handling tions within practical systems. Mixing of different
precision problems in numerical geometry. types of coordinate system can also be a non-trivial
Representing objects in the form of hierarchical situation; mapping from one into the other re-
structures is surveyed by Tilove (1981, 1984), quires detailed consideration. For example, the in-
Meagher (1982), Kedem and Ellis (1984), and Sa- tersection between two line segments whose end
met (1984). Further advances are noted in Samet points are on an integer grid may not be represent-
(1985), Samet and Tamminen (1985), Nelson and able in the floating point number system, since the
Samet (1986), and Muuss (1987). Hybrid models rounding or truncation to a unique floating point
are needed to effectively cater for all the require- number has to be done consistently.
ments of modelling and representation. In addi- Some possible solutions are standardised floating
tion, as the hardware of display architecture point arithmetic; algebraic and symbolic manipu-
evolves, data structures and algorithms have to be lation; interval arithmetic (e.g. Mudur and Ko-
mapped in such a way as to fully exploit the capa- parker 1984); and the use of rational arithmetic.
bilities of the new developments. However, the latter cannot cater for a general set
A related approach to the modelling and represen- of points.
tation of shape is presented by Brady (1981, 1984 a,
b) from the standpoint of computer vision. This Considerations in the areas of production automa-
applies more to vision recognition problems than tion and manufacturing have made it clear that
to computer graphics, but automated robots and it is no longer sufficient to use exact models to
assembly plants need to know how to deal with represent objects. Tolerance needs to be formu-
shape as part of the process of recognition and lated and represented in some way. Process plan-
manipulation. ning - the automation of robots and machine tools
As an example of the interdependency of represen- - needs more than just a description of stationary
tation, model, and picture, van Overveld (1987) objects - we need to know how these objects move
considers the following example. When a 3 D ob- in space, and where they are at any given point
ject is rendered into pixel space, the method chosen in time (Cameron 1984). This involves spatial up-
depends on the mathematical representation of the dating processes. In specialised application, areas
object to be rendered. If this is a list of polygons, (e.g. sheep shearing machines and robots), flexible
then processing consists of raster scan conversion models have to be represented.
for each polygon in order to locate all the pixels Some further problems of interest are handling the
of interest. If it is represented as a CSG tree, then complexity introduced by assemblies of objects;
this is interpreted and the appropriate CSG primi- the representation and interpretation of object
tives rendered. However, a boundary representa~ properties such as mass, surface texture, and ap-
tion of the same object (to highlight joints for ex- pearance; and handling the processes of motion,
ample) involves a different strategy requiring the machining, and assembly of parts. One of the ulti-
calculation of the intersection of the CSG primi- mate goals is to be able to automate the creation,
tives and utilising a line or curve drawing algo- analysis, transmission and management of all
rithm to select the pixels to be highlighted. But product definitions, process definitions, and asso-
there is no guarantee that these pixels coincide with ciated business data.
117
~*k*! ~ 1
omputer
3 Euclidean geometry and point-line segment distance, circular and hy-
perbolic trigonometric functions, exponentials,
More general considerations of numerical compu- logarithms, and square roots.
tations in a graphical or geometrical context are Locating the zeros of non-liner equations is re-
given by Duff (1984), including order of conver- quired for producing the ray-traced rendering of
gence, designing look-up tables, function evalua- a 3D surface. Blinn (1982) developed a hybrid
tion, intersection calculations, and spline interpo- Newton-Raphson/false position iterative method
lation and approximation. An interesting example to locate the right root, with quadratic convergence
in calculating Euclidean distance is cited from whenever Newton-Raphson would give the right
Moler and Morrison (1983). An algorithm for cal- root.
culating sqrt (a* a + b * b) is needed which is fast, Hanrahan (1983) uses multivariate polynomial
robust, and does not cause overflow or underflow functions for ray-tracing algebraic surfaces, includ-
when calculating the intermediate values of a , a ing planes, quadric surfaces and tori.
or b , b. The method by Moler and Morrison does An introduction to curve interpolation and ap-
not suffer from these problems, provided the result proximation with particular reference to computer
is in range. It has cubic convergence and may even graphics is given in Brodlie (1985) and Earnshaw
be faster than s q r t ( a , a + b , b ) . The following is (1985). There are many survey works on the uses
a C implementation: and applications of the different kinds of splines
(Bartels et al. 1984; Barnhill and Riesenfeld 1974;
double hypot (p, q)
Barsky 1987).
double p, q;
double r, s;
if (p < O) p = --p
if(q<O) q = - q
if (p<q) ( r = p ; p = q ; q = r ; ) 4 Sampling, convolution
if (p = = 0) return 0; and fourier transforms
for(; ; ) (
r=q/p
Methods and techniques from image processing
r*----r;
have increasing relevance for computer graphics
s=r+4
as the two areas draw closer together through the
if (s = = 4) return p ;
use of analogous procedures in the areas of sam-
r/=s;
piing, parallel processing, real-time image produc-
p+ =2,r,p;
tion, recognition of graphics and text, interactive
q* = r ;
) CAD and robotics, AI and computer vision, and
theoretical foundations.
The result is accurate to 6.5 digits after two itera- Aliasing arises from inadequate sampling of the
tions, to 20 digits after three, and 62 digits after continuous environment (the picture) with the dis-
four. Thus normal use would specify the extent crete raster grid (the display). This causes jagged-
of the iteration and omit the test. Dubrelle (1983) ness along lines (also known as' staircasing'). Simi-
analyses the algorithm geometrically and outlines larly in the time domain, temporal aliasing arises
a set of generalisations with arbitrarily large order from objects moving quickly with respect to the
of convergence. Duff (1984) estimates that calcu- camera causing strobing in animated sequences of
lating Euclidean distance accounts for 90% of the objects (Porter 1984). The basic problem in the
square roots in computer graphics applications. In former is seanline to scanline changes, and in the
addition, most illumination models need the unit second frame to frame changes.
normal to each visible surface to be computed at Two theorems relating to convolution and multip-
each pixel. lication in the time and frequency domain elabo-
A further example, the CORDIC rotation algo- rate on the problem of aliasing (Kajiya 1984a, b).
rithm from Voider (1959) and described in Tur- When an input signal is sampled, its values at an
kowski (1982), can be used to calculate rotations equally spaced set of points are taken as represen-
in 2 D, rectangular to polar and polar to rectangu- tative of the complete signal. Sampling an input
lar conversion, Euclidean point-point, point-line signal s(t) at discrete intervals can be represented
118
. lsuam
I. omputer
as a multiplication by a train of delta signals: 5 Further topics
x = x(n T)
5.3 Differential and algebraic geometry
where T is the sampling interval. This uses the
convolution and Fourier transform properties. To The aspects of differential geometry of relevance
recover the original signal, all extra copies are to computer graphics are those concerned with
suppressed by convolving the output with the manifolds, differential forms, and connections. Al-
kernel: - gebraic geometry contributes homogeneous poly-
nomials, factorisation, elimination, and the theory
h (t) = sin (/2, t/2)/(12J2). of plane curves (Spivak 1965, 1975; Kajiya 1984;
Hartshorne 1977).
This has as its Fourier transform a rectangle func-
tion which is non-zero only in the region about
the original spectrum. 5.4 Dynamics and motion
119
Xlsual
omputcr
5.5 Human interface modelling The combination of Mandelbrot sets, computers,
and computer graphics has provided a powerful
Graphics is often an integral part of the interface toolset for exploring the complex plane and the
between man and machine. Effective utilisation of behaviour of dynamical systems: "Imagining the
computers will rely increasingly on amore rigorous formerly unimaginable" (Salinger 1987). This has
and quantitative assessment of human-computer contributed greatly to our understanding of both
interface characteristics (Newman 1987). This in mathematics and complex systems, and has been
turn will benefit from a modelling of the processes well documented (e.g. Pietgen and Richter 1985).
at the interface; a study of the appropriateness This phenomenon is illustrative of an important
of the choice of input tools for particular applica- point: computer graphics has provided a powerful
tions; and the construction of methodologies for tool to uncover mathematical and physical behav-
specifying the design of the interface (Preece et al. iour, and in turn the mathematics has provided
1987; Pfaff 1985). the basis for developments in computer modelling
and representation of natural scenes. The former
is a very interesting analogue of the latter, and
5.6 Fractal mathematics vice-versa. There has been some discussion on the
extent to which the methods used by computer gra-
Uncovering orderliness within the framework of phicists (e.g. Fournier et al. 1982) embody the
apparent chaos is one of the purposes of the inves- mathematical purity of the Mandelbrot fractals
tigation of nature, and its representation by means (Mandelbrot 1982), but the pictures produced con-
of models, theories, and mathematical construc- tinue to be impressively realistic, whether for natu-
tions. Interestingly, there appears to be a symmetry ral terrain, flakes, or clouds. Voss (1985) summar-
between the micro analysis of nature and its macro ises some of the principal mathematical constructs
appearance and representation in the large. This and relations underlying the definition of fractals.
may be coincidental but it is more likely to reflect
the deep structure of nature and the laws that gov-
ern the relationship of its constituent parts. Exam- 5.7 Space-filling curves
ples of macro structure and appearance are trees,
clouds, coastlines, rivers, mountain ranges, and Some recent developments in space-filling curves
landscapes - all apparently random - but in fact and Peano curves embody a different strategy for
encapsulating an underlying principle of order generating pixel images giving greater speed. These
which can be expressed in terms of simple mathe- are described in Peano (1890), Witten and Wyvill
matics. However, Euclidean geometry is inade- (1983), and Cole (1987).
quate for this purpose; fractal geometry (Mandel-
brot 1977, 1983) provides the basis for a frame-
work for representing shapes in nature and also 5.8 The mathematics of parallelism
entities in mathematics. Fractal geometries exhibit
the property of self-similarity, i.e. the whole repli- Designing algorithms for parallel architectures and
cates the part, and also has a dimensionality. Ear- their exploitation for the manipulation and display
lier geometric forms such as dragon curves, the of objects is an area of current interest. Moore
von Koch snowflake curve, and the Sierpinski et al. (1987), Dew et al. (1985, 1986), H~ndler et al.
curve, all display exact self-similarity, whereas ob- (1986), and May and Shepherd (1986) provide a
jects in nature display statistical self-similarity. For summary of the current work, including systolic
example, a coastline drawn at different scales arrays and their implications. Fuchs (1987) gives
(equivalent to zooming into or out of a given re- a summary of current VLSI work.
gion) produces a set of pictures that are fundamen- Techniques for mapping synchronous, data-inde-
tally similar. In fact, they are so similar that they pendent calculations such as convolutions and
could be taken for different sections of the same transformations are well understood. However, ex-
coastline all at a constant scale. In physical terms tensions to the synchronous and data-dependent
this appears like regularity within irregularity. In cases are much more difficult - currently there is
mathematical terms it represents a high degree of no formal and comprehensive treatment. Mapping
invariance under changes of scale. algorithms on to transputers requires a partition-
120
.. ,lSUal
l omputcr
ing which minimises the need to communicatewith al have received considerable attention with a view
the overall model. to optimisation and improvement. Bresenham's al-
Exploiting parallelism is the subject of some recent gorithm (1965) has been the subject of much inves-
investigations (e.g. Theoharis 1986). Occam pro- tigation and refinement - even involving program
vides a parallel processing environment. Gold- transformations (Sproull 1982). However, formal
feather et al. (1986) describe a method of exploiting and mathematical analysis of anything other than
spatial parallelism by using a central control' and the simplest of algorithms (e.g. sorting and search-
a logical processor at each node to evaluate the ing) has proved inordinately difficult (Tucker
polynomial. For quadratic primitives the results 1985).
have been impressive in terms of executing the pro-
cesses required by the CSG trees. However, in
order to develop automated methods for imple- 6.2 Handling geometric
menting algorithms on parallel processors, some and algorithmic complexity
form of general model representation for parallel-
ism is needed. Assemblies of objects or aggregations of compo-
nents are surprisingly difficult to represent in an
informationally complete sense, such that all the
5.9 Methodology of design requirements of the model can be satisfied unam-
biguously. In addition, the complexity of computa-
Recent studies have focussed on the area of design tions arising from even the simplest operation is
with a view to obtaining greater understanding and such that greater optimisation or more powerful
elaboration of the design process (Lansdown 1985, hardware is needed for the task to be performed
1987a--c; Lawson 1983, 1987; King 1987). A in a reasonable time. Shamos (1975) has noted the
number of models have been postulated: firstly, complexity arising in geometric operations. Map-
those based on gradual iteration towards the final ping algorithms on to parallel architectures is a
design in a well-defined way (so called 'robust' non-trivial task. Forrest (1987) argues for the ap-
designs), and secondly those that represent pro- plication of rigorous software engineering tech-
gress in a more discontinuous way - related to niques when constructing large and complex geo-
the generation of new ideas (so called 'lean' de- metric systems, such that computations can be per-
signs). Models in Catastrophe Theory have been formed reliably, accurately, and consistently.
used to illustrate that these two approaches can
be represented by an overall unified model. Modi-
fication of existing designs can be aided by the 6.3 Notation and conceptualisation
provision of 'standard' options for the designer
to choose from. Where a chosen sequence of these Appropriate notation and representation of ab-
options is interrelated (e.g. in designing a building straction will enable a better understanding of the
the doors and windows cannot be larger than the processes and problems involved. In addition, a
walls) it should be possible to incorporate knowl- mental model that is able to represent a mass of
edge-based approaches into the design process. complexity often suggest new ways of thinking
However, dealing with the incompleteness which about problems. This is often the way forward.
is the essence of the process in a non-trivial task.
121
omputcr
If all this has to be performed in real-time, then Bresenham JE (1965) Algorithm for computer control of a digi-
the processes have to be efficiently represented and tal plotter. IBM Syst J 4(1):25-30
Brodlie KW (1985) Methods for drawing curves. In: Earnshaw
executed. A model of a vision processing machine RA (ed) Fundamental algorithms for computer graphics.
is needed into which these components will fit as Springer, pp 304-323
integral parts. Cameron SA (1984) Modelling solids in motion. PhD Thesis,
University of Edinburgh
Carpenter L (1980) Computer rendering of fractal curves and
surfaces. ACM SIGGRAPH (Abstract) 14(3): 109
6.5 Mathematics, models Chazelle B, Dobkin DP (1980) Detection is easier than compu-
and computer graphics tation. Proc 12th Annual ACM Symp Theory Comput,
pp 146-152
Cohen E (1983) Some mathematical tools for a modeller's
Some recent studies in the area of models have workbench. IEEE Comput Graph Appl 3(7):63%6
demonstrated the power, capability and advan- Cole AJ (1987) Compaction techniques for raster scan graphics
tages of a rigorous conceptualisation framework. using space-filling curves. Comput J 30(1):87-92
Examples are Kunii (1987) in CAD and graphics Courant R, Hilbert D (1962) Methods of mathematical physics.
Wiley
communication networks, Woodwark and Quar- Dew PM, Dodsworth J, Morris DT (1985) Systolic array archi-
endon (1987) in graphics, and Hall (1987) in colour tectures for high performance CAD/CAM workstations. In:
reproduction and illumination models. Future Earushaw RA (ed) Fundamental Algorithms for Computer
work should build on this rigorous and systematic Graphics. Springer, pp 659--694
Dew PM, Manning LJ, MeEvoy K (1986) A tutorial on systolic
approach. Computer graphics is rapidly moving array architectures for high performance processors. Rep
from a discipline based largely on pragmatics and No 205, Dept Computer Studies, University of Leeds, UK
trial and error solutions to one based on rigorous Dubrulle AA (1983) A class of numerical methods for the com-
analysis and formal methods. The unifying tools putation of pythagorean sums. IBM J Res Dev
in this transition are models, metrics and mathe- 27(6): 582-589
Duff T (1984) Numerical methods for computer graphics. SIG-
matics. GRAPH Tutorial Notes
Earnshaw RA (1985) A review of curve drawing algorithms.
In: Earnshaw RA (ed) Fundamental algorithms for com-
puter graphics. Springer, Berlin Heidelberg New York To-
References kyo, pp 289-301
Pfaff GE (ed) (1985) User interface management systems.
Arnold VI (1975) Mathematical methods of classical mechanics. Springer, Berlin Heidelberg New York Tokyo
Springer, Berlin Heidelberg New York Forrest AR (1985) Computational geometry in practice. In:
Barnhill RE, Riesenfeld RF (1974) Computer-aided geometric Earnshaw RA (ed) Fundamental algorithms for computer
design. Academic Press graphics. Springer, pp 707-724
Barr AH (1984) Global and local deformations of solid primi- Forrest AR (1987) Computational Geometry and Software En-
tives. SIGGRAPH Tutorial Notes gineering. In: Rogers DF, Earnshaw RA (eds) Techniques
Barr AH (1981) Superquadrics and angle-preserving transfor- for computer graphics. Springer, Berlin Heidelberg New
mations. IEEE Comput Graph Appl 1(1): 11-23 York Tokyo (to be published)
Barr AH (1984) Introduction to the Einstein summation nota- Fournier A, Fussel D, Carpenter L (1982) Computer rendering
tion. SIGGRAPH Tutorial Notes of stochastic models. CACM 25 : 371-384
Barr AH (1986) Ray tracing deformed surfaces. ACM SIG- Franklin WR, Barr AH (1981) Faster calculation of super-
GRAPH 20(4): 287-296 quadric surfaces. IEEE Comput Graph Appl 1(3):41-47
Barsky BA (1987) Computer graphics and geometric modelling Franklin WR (1986) Problems with raster graphics algorithms.
using beta-splines. Springer, Berlin Heidelberg New York In: Kessener LRA, Peters F J, van Lierop MLP (eds) Data
Tokyo structures for raster graphics. Springer, Berlin Heidelberg
Bartels RH, Beatty JC, Barsky BA (1984) An introduction to New York Tokyo
the use of splines in computer graphics. University of Water- Fuchs H (1987) VLSI for Graphics. In: Rogers DF, Earnshaw
loo TR CS-83-09, UC Berkeley TR UCB/CSD 83-136 RA (eds) Techniques for Comput Graphics. Springer, Berlin
Blinn JF (1982) A generalization of algebraic surface drawing. Heidelberg New York Tokyo (to be published)
ACM Trans Graph 1(3):235-256 Goldfeather J, Fuchs H (1986) Quadratic surface rendering on
Blinn JF (1984) The algebraic properties of homogeneous sec- a logic-enhanced frame-buffer memory. IEEE Comput
ond order surfaces. SIGGRAPH Tutorial Notes Graph Appl 6(1):48-59
Brady M (1981) Computer Vision. North-Holland, Amsterdam Goldfeather J, Hultquist JPM, Fuchs H (1986) Fast construc-
Brady M (1984a) Representing Shape. Report, MIT AI Labo- tive solid geometry display in the pixel-powers graphics sys-
ratory tem. ACM SIGGRAPH 20(4):107-116
Brady M (1984b) Criteria for rerpresentations of shape. In: Goldstein H (1980) Classical Mechanics. Addison-Wesley
Rosenfeld, Beck (eds) Human and machine Vision. Aca- Gnillemin V, Pollack A (1974) Differential Topology. Prentice-
demic Press Hall
122
l omputcr
Hall R (1987) Color reproduction and illumination models. Mudur SP, Koparker PA (1984) Interval methods for pro-
In: Rogers DF, Earnshaw RA (eds) Techniques for com- cessing geometric objects. IEEE Comput Graph Appl 4(2):
puter graphics. Springer, Berlin Heidelberg New York To- 7-17
kyo (to be published) Mudur SP (1986) Mathematical elements for computer graph-
H/indler W, Haupt D, Jeltsch R, Juling W, Lange O (eds) (1986) ics. In: Enderle G, Grave M, Lillehagen F (eds) Advances
CONPAR86. Proc Conf Algorithms and Hardware for Par- in Computer Graphics I. Springer, Berlin Heidelberg New
allel Processing, Aachen (September 1986) Lect Notes Com- York Tokyo
put Sci 237 Muuss MJ (1987) Understanding the preparation and analysis
Hanrahan P (1983) Ray tracing algebraic surfaces. ACM SIG- of solid models. In: Rogers DF, Earnshaw RA (eds) Tech-
GRAPH, pp 83-90 niques for Computer Graphics. Springer, Berlin Heidelberg
Hartshorne R (1977) Algebraic geometry. Springer, Berlin Hei- New York Tokyo (to be published)
delberg New York Nelson RC, Samet H (1986) A consistent hierarchical represen-
Kajiya JT (1984) Transform Theory. SIGGRAPH Tutorial tation for vector data. ACM SIGGRAPH 20(4):197-206
Notes Newman WM (1987) Designing integrated systems for the of-
Kajiya JT (1984) Differential and algebraic geometry. SIG- lice environment. McGraw-Hill, pp 421--422
GRAPH Tutorial Notes Oppenheim AV, Shafer RW (1975) Digital Signal Processing.
Kedem G, Ellis JL (1984) Computer structures for curve-solid Prentice-Hall, Englewood Cliffs New Jersey
classification in geometric modelling. TR84-37, Microelec- Overveld van CWAM (1987) A family of algorithms for gener-
tronic Center of North Carolina ating discrete embeddings of continuous objects. In: Theo-
King M (1987) Towards an integrated computer art system. retical Foundations of Computer Graphics and CAD.
In: Earnshaw RA, Lansdown RJ (eds) Computer Graphics Springer, Berlin Heidelberg New York Tokyo (to be pub-
in Art, animation and design. Springer, Berlin Heidelberg lished)
New York (to be published) Pavlidis TJ (1982) Algorithms for Graphics and image process-
Kunii TL (1987) A model-driven approach to CAD and graph- ing. Springer, Berlin Heidelberg New York
ics Communication Networks. In: Rogers DF, Earnshaw Peano G (1890) Sur une courbe, qui remplit toute une aire
RA (eds) Techniques for Computer Graphics. Springer, Ber- plaine. Math Ann 36:157-160
lin Heidelberg New York (to be published) Pietgen H-O, Richter PH (1985) The beauty of fractals: images
Lansdown RJ (1985) Requirements for knowledge-based sys- of complex dynamical systems. Springer, Berlin Heidelberg
tems in design. System Scinulation, London New York Tokyo
Lansdown RJ (1987a) Computer Graphics in Design. In: Pietgen H-O, Saupe D (1983) Julia - a scheme for the genera-
Rogers DF, Earnshaw RA (eds) Techniques for Computer tion of self-similar images. Proc CG83, Online, pp 731-741
Graphics. Springer, Berlin Heidelberg New York Tokyo (to Porter T (1984) Motion Blur. SIGGRAPH Tutorial Notes
be published) Pratt WK (1978) Digital Image Processing. Wiley
Lansdown RJ (1987 b) A theory of computer-aided design, In: Preece J, Davies G, Woodman M, Ince DC (1987) A coherent
Earnshaw RA, Lansdown RJ (eds) Computer Graphics in specification method for the user interface of documentation
Art, Animation and Design. Springer, Berlin Heidelberg systems. In: Earnshaw RA (ed) Workstations and Publica-
New York Tokyo (to be published) tion Systems. Springer, Berlin Heidelberg New York Tokyo
Lansdown RJ (1987) Some notes of fractals. In: Earnshaw RA, (to be published)
Parslow RD, Woodwark JR (eds) Geometric Modelling and Preparata FP, Shamos MI (1985) Computational geometry.
Computer Graphics Applications and Techniques. Tech Springer, Berlin Heidelberg New York Tokyo
Press Requicha AAG, Tilove RB (1978) Mathematical foundations
Lawson B (1983) How designers think. Architectural Press, of constructive solid geometry - general topology of closed
London regular sets. TM-27a, Production Automation Project, Uni-
Lawson B (1987) Intelligent building systems and coordinated versity of Rochester
drafting systems. In: Earnshaw RA, Lansdown RJ (eds) Requicha AAG (1980) Representations of rigid solids: theory,
Computer Graphics in Art, Animation and Design, Spring- methods and systems. ACM Comput Surv 12(4):437-464
er, Berlin Heidelberg New York Tokyo (to be published) Requicha AAG, Voelcker H (1982) Solid modelling: a historical
Mandelbrot BB (1977) Fractals: form, chance and dimension. summary and contemporary assessment. IEEE Comput
Freeman, San Francisco Graph Appl 2(2): 9-24
Mandelbrot BB (1983) The fractal geometry of nature. Free- Requicha AAG, Voelcker H (1983) Solid modelling: current
man, San Francisco status and research directions. IEEE Comput Graph Appl
Mandelbrot BB (1982) Comment on computer rendering of 3(7) : 25--37
fractal stochastic models. CACM 25: 581-584 Rogers DF, Adams JA (1976) Mathematical elements for com-
May D, Shepherd R (1986) Communicating process computers. puter graphics. McGraw Hill, New York
Conf Communicating parallel architectures. Esprit Summer Salinger DL (1987) Private communication
School on Future Parallel Computers Samet H (1984) The quadtree and related hierarchical struc-
Meagher DJR (1982) The octree encoding method for efficient tures. ACM Comput Surv 16(2): 187-260
solid modelling. IPL-TR-032, Image Processing Lab, RP| Samet H (1985) Approximating CSG trees of moving objects.
Moler C, Morrison D (1983) Replacing square roots by pytha- TR-1472, Comput Sci, University of Maryland
gorean sums. IBM J Res Dev 27(6):577-581 Samet H, Tamminen M (1985) Bintrees, CSG trees and time.
Moore W, McCabe A, Urquhart R (eds) (1987) Systolic Arrays. ACM SIGGRAPH 19(3): 121-130
Proc First Internat Workshop on Systolic Arrays (July Segel LA (1977) Mathematics Applied to continuum mechanics.
1986) Oxford, England. Adam Hilger, Bristol Boston Macmillan
123
I omputcr
Shamos MI (1975) Geometric complexity. Seventh ACM Annu- sign. In: Earnshaw RA (ed) Fundamental algorithms for
al Symp on Theory of Computing, pp 224-233 computer graphics. Springer, Berlin Heidelberg New York
Solkolnikoff (1956) Mathematical theory of elasticity. McGraw Tokyo, pp 855-878
Hill Turkowski K (1982) Antialiasing using Coordinate Rotations,
Spivak M (1965) Calculus on manifolds. Benjamin ACM Transactions on Graphics, Vol 1, No 3, pp 215-234
Spivak M (1975) A Comprehensive introduction to differential Voider JE (1959) The CORDIC Trigonometric technique. IRE
geometry, vol 5. Berkeley Trans Electronic Comput EC-8(3):330-334
Sproull RF (1982) Using program transformations to derive Voss RF (1985) Random fractal forgeries. In: Earnshaw RA
line-drawing algorithms. ACM Trans Graph 1(4): 259-273 (ed) Fundamental Algorithms for Computer Graphics.
Theoharis TA (1986) Exploiting parallelism in the graphics pi- Springer, Berlin Heidelberg New York Tokyo, pp 805-835
peline. MSc Thesis, Oxford University Programming Re- Witten IH, Wyvill B (1983) On the generation and use of space
search Group, PRG-54 filling curves. Software Pract Exper 6:519-525
Tilove RB (1981) Exploiting spatial and structural locality in Woodwark JR, Quarendon P (1987) The model for graphics.
geometric modelling. PhD Thesis, University of Rochester In: Rogers DF, Earnshaw RA (eds) Techniques for Com-
Tilove RB (1984) A null-object detection algorithm for con- puter Graphics. Springer, Berlin Heidelberg New York To-
structive solid geometry CAcM 27(1):684-694 kyo (to be published)
Tucker JV (1985) Theoretical considerations in algorithm de-
124