Part 4: Other 3D modelling mechanisms
A: Generative models
B: Converting swept objects to polygons
C: Constructive Solid Geometry
D: Implicit surfaces, voxels and marching cubes
E: Subdivision surfaces
...back to part 3  on to part 5...
CSG is covered in FvDFH sections 12.7 and 15.10.3.
The following example illustrates the three CSG operations in use on simple three dimensional primitives.
The two primitives: a sphere and a box.
The union of the two primitives.
The intersection of the two primitives.
The difference of the two primitives: box minus sphere.
The following example, based on FvDFH Plate III.2, shows an
object for which CSG is (probably) the only sensible modelling
technique. The object rendered in the righthand image is constructed
from the primitives shown in the lefthand image. It is mostly made
out of cylinders, but you will recognise the extruded star from Part 4A.
At right, I tried the "Godel, Escher, Bach" treatment on my initials.
Unfortunately the letters N, A, and D are not as amenable to this as
the letters G, E, and B: notice that the shadow of the N has a slight
curve at its top right, owing to the N's intersection with the curve
on the D and the slope on the A. Various other arrangements of the
three letters were tried, all of which gave more noticable artefacts
than this. Each of the letters is a CSG object (the D, for example,
is constructed from cylinders and boxes). The final effect is produced
simply by intersecting the three letters.
Exercises

Part 4: Other 3D modelling mechanisms
A: Generative models
B: Converting swept objects to polygons
C: Constructive Solid Geometry
D: Implicit surfaces, voxels and marching cubes
E: Subdivision surfaces
...back to part 3  on to part 5...