Many disciplines are concerned with manipulating geometric (or spatial) objects in the computer – such as geology, cartography, computer aided design (CAD), etc. – and each of these have developed their own data structures and techniques, often independently. Nevertheless, in many cases the object types and the spatial queries are similar, and this book attempts to find a common theme.
The book starts with some of the basics of manipulating coordinate representations so that the resulting object descriptions may be usefully combined and queried. The first chapter should be of value to research students in fields with limited prerequisites in mathematics and computing.
The book then considers the concepts necessary to express the spatial relationships between both 2D and 3D entities, whether points, lines, polygons or polyhedra, so that they may be queried, grouped or combined. A unifying theme is a discussion of the various types of boundaries between regions of space, based on the Voronoi diagram and its dual, the Delaunay triangulation, and various available static, dynamic and kinetic algorithms. Applications, including surface interpolation, crusts and skeletons, contour and watershed handling, scanned map processing and solid line-work for urban mapping, are then described: this leads to the Unified Spatial Model for 2D mapping and GIS.
The last section examines 3D space – both simple shell models for building exteriors as well as true 3D, where volumetric elements may be defined, such as rooms and corridors. Shell models require some introduction to basic CAD structures, and solid 3D requires advanced edge-based data structures. Both of these application areas lead to straightforward modelling techniques and emphasize the moral of this book: the spatial dual is the context. Example application areas described include geology, geography, forestry, surveying, cosmology, CAD – and many others.