Computers & Geosciences Vol. 18, No. 8, pp. 975-987, 1992 0098-3004/92 $5.00+ 0.00
Printed in Great Britain.All rights reserved Copyright © 1992Pergamon Press Ltd
COMPUTER CARTOGRAPHY FOR GIS:
AN OBJECT-ORIENTED VIEW
ON THE DISPLAY TRANSFORMATION
ANDREW U. FRANK and MAx J. EGENHOFER
Department of Surveying Engineering and National Center for Geographic Information and Analysis,
University of Maine, Orono, ME 04469, U.S.A.
A~tract---Geographic Information Systems (GlSs) are widely used tools for the collection, management,
and display--or visualization--of many types of data that describe space. Visualization of spatial data
has been the domain of expertise of cartographers and elaborate recommendations for best rendering of
spatial data exist. Unfortunately, this body of knowledge is not cast yet into a formalization and thus
is not accessible immediately for programming GIS software.
A particular problem is the description of the rendering parameters for complex spatial objects. This
paper presents a method for describing the set of individual geometric objects parts to which different
rendering parameters can be assigned. The geometric data model uses the concepts of boundary and
interior, and their specializations returning objects ofparticular dimensions. It is applicable equally to both
raster and vector data, and, therefore, a contribution to the integration of vector and taster GIS. The
rendering parameters are based upon Bertin's "visual variables." Abbreviated class definitions in C + +
are included as a method to describe formally the concepts treated.
Key Words: Object-oriented programming, C + +, Computer cartography, Visual variables, Topology,
Boundary, Interior.
INTRODUCTION
A Geographic Information System (GIS) is a tool
for the collection, management, and display of
spatial information (Burrough, 1986). Many organiz-
ations adopt GISs to treat data that describe space,
spatial objects, or human activities related to
location in space. Spatial data range from infor-
mation about the boundaries and ownership of
land parcels (NRC, 1980) over regional land use
to climate data on a global scale (Mounsey and
Tomlinson, 1988).
A critical aspect of a GIS is the visual commun-
ication of results (Egenhofer, 1990). Some GISs offer
interactive query languages--most are extensions
of SQL (Ingram and Phillips, 1987; Roussopoulos,
Faloutsos, and Sellis, 1988; Herring, Larsen, and
Shivakumar, 1988; Egenhofer, 1991a)---which increase
the users' abilities to select data based on spatial
criteria; however, they support only tabular represent-
ations of query results and do not sufficiently address
the rendering of the data selected (Egenhofer, 1991b).
Spatial data presented in nonspatial, for example
tabular, format are difficult to read and most of
the information cannot be "seen" without graphic
rendering (Tufte, 1983, 1990).
The topic of this paper is the translation of attribute
data into graphical form. Cartography has developed
a large collection of elaborate rules for displaying
spatial information. Unfortunately, most of these rules
are informal recommendations that require "common
sense" to be interpreted (Imhof, 1972; Robinson and
others, 1984). The users' expectations of flexibility
in the graphical presentation of the results cannot be
met by the state of the art in computer cartography.
Although some special problems of computer cartog-
raphy, primarily placement of names (Freeman and
Ahn, 1987), have been studied, currently, one cannot
automatically construct maps and diagrams on
demand so that they optimally communicate a given
set of data.
This paper follows the tradition of understanding
cartography as a transformation (Tobler, 1979;
Robinson and others, 1984). Cartographers have
studied extensively the transformations between point
sets (map projections) and the transformations from
a cartographic line to another (line generalization).
Here, we concentrate on the specific transformation
of spatially related attribute data into a graphical
representation, namely the values and parameters
necessary to determine the graphical rendering for
geometric elements. The paper develops the chain of
transformations from the geometric and attribute
data stored in a database to the display. In this
process, some of the geometric attributes are selected
to determine the position and form of the object
rendered. Other attributes are selected to determine
the color, pattern, and line width of the presentation
of the object. A variation of Bertin's (1983) "visual
variables" is used to describe the visual parameters of
each component of the geometric object. This process
is applicable to both vector and raster data, thus
975