scispace - formally typeset
Open AccessBook ChapterDOI

Algorithms for Triangulated Terrains

Reads0
Chats0
TLDR
In this article, the authors discuss ways to represent a triangulated irregular network (TIN) in a data structure, and give some of the basic algorithms that work on TINs.
Abstract
Digital elevation models can represent many types of geographic data. One of the common digital elevation models is the triangulated irregular network (also called TIN, or polyhedral terrain, or triangulated terrain). We discuss ways to represent a TIN in a data structure, and give some of the basic algorithms that work on TINs. These include retrieving contour lines, computing perspective views, and constructing TINS from other digital elevation data. We also give a recent method to compress and decompress a TIN for storage and transmission purposes.

read more

Content maybe subject to copyright    Report

Algorithms for Triangulated Terrains
Marc van Kreveld
Dept. of Computer Science
Utrecht University
The Netherlands
marc@cs.ruu.nl
Abstract
Digital elevation models can represent many types of geographic data. One of the
common digital elevation mo dels is the triangulated irregular network (also called TIN,
or polyhedral terrain, or triangulated terrain). We discuss ways to represent a TIN in a
data structure, and give some of the basic algorithms that work on TINs. These include
retrieving contour lines, computing persp ective views, and constructing TINs from other
digital elevation data. We also give a recent metho d to compress and decompress a TIN
for storage and transmission purposes.
1 Intro duction
Geographic Information Systems are large software packages that store and op erate on ge-
ographic data. They are large b ecause they usually include a full database system, and
set of functions to op erate on spatial data. It is the spatial (or geometric) comp onent that
distinguishes geographic information systems (or GIS for short) from standard databases.
roads
landuse
railroads
Figure 1: Layers of geographic data in a GIS.
Geographic data comes in many forms. Borders of countries and provences, lo cations of
roads and hospitals, and pollution of the lakes and rivers are types of man-made geographic
data. Natural geographic data includes elevation ab ove sea level, annual p ercipitation, soil
typ e, and much more. GIS store the dierenttyp es of geographic data in dierent
map layers
,
so there is a map layer with the ma jor roads, one with the rivers, one with the current land
use, and one with the elevation ab ove sea level. GIS typically store from ten up to a few
hundred map layers.
Research is partially supp orted by the ESPRIT IV LTR Pro ject No. 21957 (CGAL).
1

It is rather useful to havetyp es of data in dierentlayers. A GIS user may wish to see a
map on the screen with only cities and railroads, b ecause this particular user plans to travel
by train somewhere. Oraphysical geographer may wish to see the
overlay
of soil typ e and
amount wind erosion, to study how these two data sets are related.
For any sp ecied lo cation on the Earth or on a map, one can say that some value is
asso ciated to it in a particular theme. For instance, at 53
15
0
latitude and 6
longitude the
particular land use is \agricultural", the elevation is 1 meter ab ove sea level, and the annual
p ercipitation is 790 mm. So the value can b e a name, or a numb er, or something else. In the
rst case the data is called
nominal
, in the second case it is called
ratio
. (Traditionally, four
scales of measurementwere used: nominal, ordinal, interval, and ratio [27]. Geographic data
can also b e a direction or a vector, like wind.)
This pap er deals with data on the ratio scale, which can b e seen as a function from a 2-
dimensional region to the reals. The domain can b e referenced by geographic co ordinates, for
example, but we'll do as if wehave a function from the
xy
-plane into the third,
z
-dimension.
Elevation ab ove sea level is the most obvious typ e of data that is mo delled by such a function.
One of the problems when storing and computing on elevation data is that the amount
of data can be enormous. Currently available for the US is elevation data for p oints at a
regular spacing of 30 meters, which means a few billion p oints. In the future data sets of
considerably smaller spacing will b e collected, leading to even larger data sets. A consequence
is that only
ecient
algorithms can be used to pro cess the data. This pap er surveys the
common mo dels to store elevation data, in particular the triangulated irregular network. We
then discuss a couple of the basic algorithms that op erate on this mo del, like determining
contour lines, visualization by p ersp ective views, and conversion from other elevation mo dels.
Then we concentrate on a recent result on ecient compression and decompression for the
triangulated irregular network, which is imp ortant for background storage and for network
transmission.
Figure 2: Perspective view of a triangulated irregular network.
This pap er presents several algorithms for terrains. To analyse and express the eciency
of these algorithms we'll use big-Oh notation. For instance, for a triangulated irregular
network determined by a set of
n
data points, the contour lines of some given elevation can
b e determined in
O
(
n
), or linear time. It is imp ortant that the algorithms have running times
like
O
(
n
)or
O
(
n
log
n
), b ecause quadratic time usually is to o slow in practice for the amount
of data involved.
2

2 Digital elevation mo dels
In the computer the true geographic elevation (function) has to be approximated by some
nite representation of it. This is called a
digital elevation model
. There are three common
digital elevation mo dels (or DEMs for short). They are the regular square grid, the contour
lines, and the triangulated irregular network.
The regular square grid is a 2-dimensional array where eachentry stores an elevation. An
entry represents some region on the Earth of, say, 10 by 10 meters, and the stored value is
the elevation of the center p oint of the region.
Figure 3: Contour lines of a terrain.
A contour map consists of a collection of separate contour lines that each have some
elevation. Each contour line can be stored as a sequence of control p oints through which
the contour line is assumed to pass. A contour line is a closed curve, or it may have its
endp oints on the b oundary of the region for which the elevation function is dened. It can
b e represented by a polygon or p olygonal line, or a spline curve.
788
735
742
( .., .., 788)
( .., .., 742)
( .., .., 735)
Figure 4: Triangulation with elevation values at vertices.
The triangulated irregular network (or TIN, or p olyhedral terrain, or triangulated terrain)
is a third way to represent elevation. A triangulation on some nite set
S
of p oints is a planar
sub division into triangles that is maximal, and such that only the p oints of
S
app ear as vertices
of the sub division. When used as an elevation mo del, the vertices of the triangulation store
an elevation value. The elevations on the edges and inside the triangles of the sub division are
obtained by linear interpolation. So if some p oint
q
=(
x;
y
) lies inside a triangle with vertices
v
i
=(
x
i
;y
i
),
v
j
=(
x
j
;y
j
), and
v
k
=(
x
k
;y
k
) with elevations
z
i
,
z
j
, and
z
k
, then we consider
3

the unique plane that passes through the three points (
x
i
;y
i
;z
i
), (
x
j
;y
j
;z
j
), and (
x
k
;y
k
;z
k
).
Then we determine the value
z
of
q
such that the p oint(
x;
y;
z
) lies on the plane, which gives
the interpolated value.
Note that there are many dierent triangulations p ossible of a given set of p oints. All
must have the same numb er of edges and triangles, b ecause triangulations are maximal pla-
nar sub divisions. By Euler's relation for planar graphs, the numb er of edges and triangles is
linear in the numb er of p oints, the vertices that determine the sub division. Dierent triangu-
lations of a p oint set lead to dierent elevations at p oints on edges and inside triangles. For
interp olation purp oses, it seems natural to cho ose one that has small, well-shap ed triangles.
The standard choice is the so-called
Delaunay triangulation
that will be discussed later.
The contour line mo del isn't used as a way to store elevation data p ermanently. However,
one of the ways to obtain elevation data is by digitizing the contour lines on contour maps,
so one may have to deal with the contour mo del nevertheless. Often, the contour mo del is
converted to the grid or TIN mo del b efore further pro cessing.
One of the advantages of the TIN over the grid is that it is adaptive: more data p oints can
be used in regions where there is much elevation change, and fewer p oints in regions where
the elevation hardly changes. One of the disadvantages of the TIN when compared to the
grid is that the algorithms usually are somewhat more complex.
3 Data structures for a TIN
This section gives two dierent ways to represent TINs. One is edge based and the other is
triangle based. In b oth cases it will b e p ossible to navigate on the TIN, going from one triangle
to an adjacent one eciently, or nding all triangles that are incident to a particular vertex.
The two structures are simplied versions of data structures that can store arbitrary planar
sub divsions such as the doubly-connected edge list, winged edge, or quad edge structure,
commonly used in GIS, graphics, and computational geometry [6, 8, 14,32].
In the triangle-based structure for a TIN, any triangle and vertex is represented by an
ob ject or record. A triangle ob ject has six references, three to the adjacent triangles, and
three to the incident vertices. Vertices are stored by ob jects that only have the
x
-,
y
-,
and
z
-co ordinates. Edges are not stored explicitly, but they can be determined from the
structure if necessary. The
cgal
-library of geometric primitives and algorithms provides this
structure [2].
In the edge-based structure for a TIN, any edge is an ob ject that has a dual purp ose. It
connects two vertices and it separates two triangles. In the structure any edge ob ject has
references to two vertex ob jects (of the vertices it connects) and to two triangle ob jects (of
the triangles it separates; there may only be one). The triangle ob jects have references to
the three edge ob jects that b ound the triangle. Vertices again only store the
x
-,
y
-, and
z
-co ordinates. There are no references b etween vertex ob jects and triangle ob jects.
4 Visualization and traversal of a TIN
The most common waytoshow elevation on maps is by contour lines at regular intervals. The
map can b e enhanced by
hil l shading
, a technique where an imaginary light source is placed
in 3-dimensional space, and parts of the terrain that don't receive much light are shaded.
Another way to visualize a terrain is by a p ersp ective view. The algorithms required for
visualization are standard graph algorithms on the TIN structure in b oth cases.
4

vertex
edge
triangle
Figure 5: Left, the edge-based and right, the triangle-based structures of the triangulation
shown at the top.
4.1 Contour maps
To determine all contour lines of, say, 1000 meters, on a TIN representing a terrain, observe
that any triangle contains at most one line segment that is part of the contour lines of 1000
meters. In fact, the contour lines of 1000 meters are nothing else than the cross-section of the
terrain as a 3-dimensional surface, and the horizontal plane
z
= 1000. So, to determine the
contour lines on a TIN it suces to examine every triangle once and see if it contributes to
the contour lines. Similarly, to compute hill shading for a TIN, one needs to determine the
slop e of each triangle and its asp ect (the compass direction to which the triangle is facing, in
the
xy
-pro jection). The slop e and asp ect determine howmuch a triangle is shaded, given a
p osition of the light source. As for contour lines, it suces to examine every triangle of the
TIN once to compute hill shading for the whole terrain.
view p oint
Figure 6: Left, dual graph of the TIN, with grey no des and solid arcs. Right, dual directed
acyclic graph for agiven view p oint.
A traversal that visits every triangle once is like a depth-rst search in a graph dual to
5

Citations
More filters
Journal ArticleDOI

Geographical Information Systems: Principles and Applications

TL;DR: This website offers an incredible number of free books for you on the authors' site, with the title Geographical Information Systems Principles And Applications among them, and the same PDF edition of any file is obtainable from your computer or mobile devices which have a web connection to download Geographical information Systems Principles and Applications Download PDF for free.
Journal ArticleDOI

GPSLoc: Framework for Predicting Global Positioning System Quality of Service

TL;DR: The requirements, methodologies, models, and algorithms for the GPSLoc framework, a framework for the proposed quality of service ~QoS! assurance for GPS, are discussed and the experimentation with one of the GPS QoS parameters ~visibility!.
Dissertation

The development of a teaching tool using Sketchup to enhance surveying competence at the Durban University of Technology

TL;DR: In fullfilment of the requirements of the degree of Master of the Built Environment (MBE), Durban University of Technology, Durban, South Africa, 2015 as mentioned in this paper.

Improving the accuracy of digital terrain models

Gabriela Droj
TL;DR: The change from paper maps to GIS, in various kinds of ge- ographical data analysis and applications, has made it easy to use the same spatial data for dierent applications.
Book ChapterDOI

Geometric Spanners in the MapReduce Model

TL;DR: This paper proposes an efficient MapReduce algorithm for constructing a geometric spanner in a constant number of rounds, using linear amount of communication.
References
More filters
Proceedings ArticleDOI

Primitives for the manipulation of general subdivisions and the computation of Voronoi diagrams

TL;DR: Two algorithms are given, one that constructs the Voronoi diagram of the given sites, and another that inserts a new site in O(n) time, based on the use of the Vor onoi dual, the Delaunay triangulation, and are simple enough to be of practical value.
Journal ArticleDOI

Randomized incremental construction of Delaunay and Voronoi diagrams

TL;DR: A new randomized incremental algorithm for the construction of planar Voronoi diagrams and Delaunay triangulations is given that takes expected timeO(nℝgn) and spaceO( n), and is eminently practical to implement.
Book

Visualization in modern cartography

TL;DR: Part 1 Introducing geographic visualization (GVIS): visualization in modern cartography - setting the agenda, A. MacEachren and C. Sarjakoski expert/novice use of visualization tools.

Fast Polygonal Approximation of Terrains and Height Fields

TL;DR: The optimized algorithm is faster, with an expected cost of O((m+n) logm).
Related Papers (5)
Frequently Asked Questions (10)
Q1. What are the contributions mentioned in the paper "Algorithms for triangulated terrains" ?

The authors discuss ways to represent a TIN in a data structure, and give some of the basic algorithms that work on TINs. 

But redistribution of the points can also be done in O(k+m logm) time by sorting the m points by angle around p. Since all new triangles in the TIN are incident to p, the authors can distribute the m points over the k triangles by using the sorted order. 

we'd like all vertices in the chosen independent set to have constant degree in the graph, say, each chosen vertex has at most ten neighbors. 

Borders of countries and provences, locations of roads and hospitals, and pollution of the lakes and rivers are types of man-made geographic data. 

Both the triangle-based and the edge-based TIN structures implicitly store this graph, and depth- rst search through all the triangles is easy if a mark bit is available in every object, to see if it has been visited before. 

The authors can produce such a view using the Painter's Algorithm, where all triangles are drawn from back to front, so that the ones more to the front erase the ones more to the back. 

The algorithm we'll describe selects a subset of the grid points, such that the Delaunay triangulation of this subset is a TIN that approximates the elevation at all grid points to within a prespeci ed error . 

By Euler's relation for planar graphs, the number of edges and triangles is linear in the number of points, the vertices that determine the subdivision. 

This can be the triangulation between contour lines, grid to TIN conversion as in this paper, or producing a TIN from point data, with or without an interpolation method. 

So for a TIN with n vertices and, hence, O(n) edges and triangles, one can compute all contour lines of a given elevation in O(n) time by depth- rst search.