The "visibility region" of a viewpoint on a surface is wll- defined. It contains all of the points that can be joined to the viewpoint by means of a line-segment that does not pass through the surface. In principle, the visibility region of every point on the surface can be computed. In practice, however, its computation must be approximated. In this research, the visibility regions of the n vertices of a Delaunay-triangulated terrain model are studied. A major goal of this research is to improve the average performance of known hidden-line and hidden- surface algorithms. This is accomplished by using several types of heuristics based on the unique characteristics of the problem. Algorithms will be developed to apply the resulting visibility maps to the location of observation points: to line-of-sight (television, fm, radar) communications and surveillance problems; to orientation and navigation; to data compression; and to the extraction of significant terrain features such as ridges and valleys. It is argued that the global nature of visibility model provides a useful alternative to partial derivatives for defining topographic entities. This research is expected to contribute to several areas including computational geometry, geographic information systems, and to computer communications.