3 mapping of spatial data - tu braunschweig · 2012-11-06 · •mapping (visualization) of spatial...
TRANSCRIPT
3.1 Properties of Maps
3.2 Signatures, Text, Color
3.3 Geometric Generalization
3.4 Label and Symbol
Placement
3.5 Summary
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 206
3 Mapping of Spatial Data
http://homepage.univie.ac.at/.../Janschitz_Text.pdf
• Mapping (visualization) of spatial objects by
transforming them into representation objects
(map objects)
• Map
– Generalized model in a reduced scale for representing
selected spatial information
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 207
3 Mapping of Spatial Data
http://www.xerokampos.eu/
• Topographic map
– Geometrically and positionally accurate
representation of
landscape objects drawn
to scale (topography,
water network, land
use, transportation
routes)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 208
3 Mapping of Spatial Data
http://www.gps-touren.net/
• Thematic map
– Emphasis is on subject-specific information (geological
map, vegetation
map, biotope
map)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 209
3 Mapping of Spatial Data
http://www.lung.mv-regierung.de/
• Challenges
– Projection of the 3D surface on two dimensions
(paper, film, screen)
– Selection of the spatial objects and their attributes to be displayed
– Generalization of geometric and thematic properties (simplify, omit depending on scale)
– Exaggeration and displacement (e.g. river valley with roads and railway lines)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 210
3 Mapping of Spatial Data
http://maps.google.de/
• Graticule
– Mapping the earth (sphere,
ellipsoid) to a plane
– Two tasks
• Conversion of geographic
coordinates (longitude
and latitude) to cartesian
coordinates (x, y; easting,
northing)
• Scaling of the map
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 211
3.1 Properties of Maps
www.klett.de
• Projections on
– Cone
– Plane
(azimuthal
projection)
– Cylinder
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 212
3.1 Properties of Maps
[HGM02]
• Desired properties
– Length preservation: with plane maps only limitedly
attainable (in certain directions or at certain points)
– Equivalent (equal area): preserve area measurements
shape, angle, and scale may be strongly distorted
– Conformal: important
for navigation in
shipping and air
transport
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 213
3.1 Properties of Maps
http://www.quadibloc.com/maps/
• Areas and angles can not be preserved at the
same time, therefore
– Compromise projections minimize overall distortion
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 214
3.1 Properties of Maps
htt
p:/
/su
pp
ort
2.d
un
das
.co
m/O
nlin
eD
ocu
me
nta
tio
n/
We
bM
ap2
00
5/M
apP
roje
ctio
ns.
htm
l
• Example:
Conical
Projection
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 215
3.1 Properties of Maps
http://www.csiss.org/map-projections/
• Example:
Azimuthal
Projection
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 216
3.1 Properties of Maps
http://www.csiss.org/map-projections/
• Example:
Cylindrical
Projection
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 217
3.1 Properties of Maps
http://www.csiss.org/map-projections/
• The Gauss-Krüger coordinate system
– Used in Germany and Austria
– Cartesian coordinate system to represent small areas
– Divides the surface of the earth into zones
• Each 3° of longitude in width
• The zones are projected onto a cylinder with the earths
diameter
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 218
3.1 Properties of Maps
www.geogr.uni-jena.de/.../GEO142_3b.ppt http://homepage.univie.ac.at/.../Janschitz_Text.pdf
– Origin of the coordinate system:
intersection point of the central meridian and the
equator
– X coordinate from the
origin positive towards east,
y coordinate from the origin
positive towards north
– X and y values given in meters
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 219
3.1 Properties of Maps
http://www.gerhard-tropp.de/Troppo/gauss_krueger.html
www.geogr.uni-jena.de/.../GEO142_3b.ppt
– To avoid negative x coordinates the central meridian
is set to 500,000 m (false easting)
– Each projection zone (3°, 9°, ..., 177°) is identified
by a number (1, 3, …, 59)
– This number is placed prior to the x value
– Example: the Gauss-Krüger coordinates
x: 3,567,780.339 and y: 5,929,989.731
refer to the following location
x: 67,780.339 m East of the 9° meridian
y: 5,929,989.731 m North of the equator
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 220
3.1 Properties of Maps
• Structure of maps
– Body of the map presentation of the actual map
– Map margin contains name, map, scale, legend
– Map frame borders map, contains numbering of the respective coordinate system
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 221
3.1 Properties of Maps
http://www.apat.gov.it/
• Graphical design elements of maps are
– Symbols
(signatures)
for
• Points
• Lines
• Areas
– Text
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 222
3.2 Signatures, Text, Color
http://lehrer.schule.at/Ecole/
• The use of point, line, area symbols depends on
– Spatial scale of a map
– Purpose of the map
– Convention
• Point signatures are (composite) symbols for the representation of spatial objects with point geometry
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 223
3.2 Signatures, Text, Color
[HGM02]
• Line signatures represent objects with line geometry
• Area signatures represent objects with area geometry
• Texts are needed in various fonts for the labeling of maps
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 224
3.2 Signatures, Text, Color
[HGM02]
• Color
– Important design element
– Additive mixture
• Most relevant for displaying maps
on screen
• Common color space: RGB
– Subtractive mixture
• Most relevant for printing maps
• Common color space: CMYK
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 225
3.2 Signatures, Text, Color
htt
p:/
/ww
w.h
orr
ors
eek.
com
/ h
ttp
://a
cad
emic
.scr
anto
n.e
du
/
– There exist various
color tables
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 226
3.2 Signatures, Text, Color
http://i.msdn.microsoft.com/ http://us-shop-paderborn.com/
• For maps and map series the signatures on-hand,
fonts, and colors are specified in signature
catalogs and color
tables
– Example:
topographical map
1:25.000 (TK25)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 227
3.2 Signatures, Text, Color
http://www.lgn.niedersachsen.de/
• Signature catalog "SK25" describes how the TK25 is derived
from the "digital landscape model" (digitales
Landschaftsmodell 1:25.000, DLM25)
• The catalog consists of derivation rules and signatures
(about
300
forms)
• Some
derivation
rules:
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 228
3.2 Signatures, Text, Color
• Some signatures:
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 229
3.2 Signatures, Text, Color
– Example:
• Real estate map 1:1000
• The ALKIS project (official property cadastre information
system, Amtliches Liegenschaftskataster Informationssystem)
specifies a signature library and derivation rules
• Approximately 670 signatures
• Approximately 850 derivation rules
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 230
3.2 Signatures, Text, Color
• A signature
specification:
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 231
3.2 Signatures, Text, Color
Section of a real estate map
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 232
3.2 Signatures, Text, Color
• The direct geometric derivation (coordinate
transformation) of map objects from spatial
objects works only with large-scale maps
(e.g. real estate
map)
• For small-scale
maps there are
too many details
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 233
3.3 Geometric Generalization
http://www.geobasis-bb.de/GeoPortal1/
• Generalization simplifies map content for the
preservation of readability and comprehensibility
• Replacement of scale preserving mappings
through simplified mappings, symbols, and
signatures
• Select and summarize information
• Maintain important objects, leave
out unimportant ones
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 234
3.3 Geometric Generalization
http://www.kartographie.info/
• Eight elementary operations
– To simplify
– To enlarge
– To displace
– To merge
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 235
3.3 Geometric Generalization
– To select
– To symbolize
– To typify
– To classify
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 236
3.3 Geometric Generalization
www.ikg.uni-hannover.de
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 237
3.3 Geometric Generalization
Base map 1:5000 Topographical map 1:25.000
[HGM02] [HGM02]
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 238
3.3 Geometric Generalization
Topographical map 1:25.000 Topographical map 1:50.000
[HGM02] [HGM02]
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 239
3.3 Geometric Generalization
Topographical map 1:50.000 Topographical map 1:100.000
[HGM02] [HGM02]
• Typical operations for generalization
(alternative view)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 240
3.3 Geometric Generalization
[SX08]
• Smoothing of polylines by means of a simple
low-pass filter:
y(n) = 1/3(x(n)+x(n−1)+x(n−2))
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 241
3.3 Geometric Generalization
• Electronic filter that passes low-frequency signals
but attenuates high-frequency signals
• Further common filter types
– High-pass
– Band-pass
– Band elimination
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 242
3.3 Low-pass Filter
• Passive electronic realization
– Simple circuit consists of a resistor and a capacitor
(RC filter, first order filter)
– More advanced circuit with
additional inductor
(RLC filter,
second order
filter)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 243
3.3 Low-pass Filter
http://upload.wikimedia.org/
http://ecee.colorado.edu/~mathys/
• Active electronic realization
– For example RC filter with an operational amplifier
– An operational amplifier has a high input impedance
and a low output
impedance
– Voltage gain is
determined by
resistors R1, R2
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 244
3.3 Low-pass Filter
http://www.electronics-tutorials.ws/
• Digital filters are realized as
– Finite impulse response
filter (FIR)
• Impulse response lasts for
n+1 samples and settles to zero
• Output is a weighted sum of
the current and a finite
number of previous values
of the input
– Infinite impulse response
filter (IIR)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 245
3.3 Low-pass Filter
http://upload.wikimedia.org/
• A moving average filter is a very simple FIR filter
– All n filter coefficients
are set to 1/n
– Realization by means of
• Delay units
• Ring buffer
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 246
3.3 Low-pass Filter
http://upload.wikimedia.org/
http://blog.avangardo.com/wp-content/
• In offline mode (no real-time constraints)
a moving average filter results in a simple loop
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 247
3.3 Low-pass Filter
x[1...n] input values y[1...n] output values for (int i=2; i<n; i++) { y[i] = 0.333*(x[i-1]+x[i]+x[i+1]); }; y[1] = x[1]; y[n] = x[n];
• Adaptation of simple low-pass filter to
two-dimensional
geometry
x′i = ⅓(xi−1 +xi+ xi+1)
y′i = ⅓(yi−1 +yi + yi+1)
+ very efficiently to compute
− coordinates are changed, no reduction of points
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 248
3.3 Geometric Generalization
• Simplification of polylines
– Reduction of points
– No change of coordinates
• Douglas/Peucker algorithm [DP73]
– Given: polyline L, threshold g
– g is very small: L remains unchanged
g is very large: L is changed to
one single line
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 249
3.3 Geometric Generalization
• Douglas/Peucker algorithm
1. given: polyline L, threshold g
2. determine line between the start and end point of L,
3. determine the point of L that is furthest from the line segment
4. if distance > g then the point is significant, repeat procedure for both sub-lines, otherwise remove all the points between the start and end point of L
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 250
3.3 Geometric Generalization
http://en.wiki.mcneel.com/
Examples:
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 251
3.3 Geometric Generalization
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 252
3.3 Geometric Generalization
Properties:
+ simple base operation: distance measurement
− runtime of naive implementation: O(n2)
+ runtime of optimized implementation: O(n log n)
+ good results even with a strong reduction of points
+ extendable for polygons
− "outliers" are not eliminated
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 253
3.3 Geometric Generalization
• Polygon to polyline conversion
– Presentation of rivers and roads
– Text placement within polygons
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 254
3.3 Geometric Generalization
http://www.almenrausch.at/bergtouren/ http://www.naturathlon2006.de/
• Schoppmeyer/Heisser procedure [SH95]
1. Given: elongate polygon P
2. Determine the longitudinal axis of P
3. Drop the perpendicular from all edge points to the
longitudinal axis
4. Determine the intersection points of the extended
perpendicular lines
5. Determine the centre of the resulting axes
6. Connect adjacent centers
7. Determine suitable start and end segment
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 255
3.3 Geometric Generalization
Example
1. Given: elongate polygon P
2. Determine the longitudinal axis of P
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 256
3.3 Geometric Generalization
3. Drop the perpendicular from all edge points to the
longitudinal axis
4. Determine the intersection points of the extended
perpendicular lines
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 257
3.3 Geometric Generalization
5. Determine the centre of the resulting axes
6. Connect adjacent centers
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 258
3.3 Geometric Generalization
7. Determine suitable start and end segment
Result
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 259
3.3 Geometric Generalization
Using the result for text placement
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 260
3.3 Geometric Generalization
Properties:
+ relatively short runtime
+ quite good results with "good-natured" polygons
− determining the start and end segment
− procedure fails for non-elongate polygons
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 261
3.3 Geometric Generalization
• Procedure for arbitrary polygons Petzold/Plümer [PP97]
1. given: Polygon P (set of points S)
2. determine Voronoi diagram of S
3. determine intersection points of the Voronoi edges and the polygon edges
4. consider resulting Voronoi skeleton:
5. choose an appropriate sequence of edges
Voronoi diagram:
assigns each point Pi ∈ S the points of the plane that are closer to Pi , than to each Pj ∈ S, i≠j.
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 262
3.3 Geometric Generalization
Example
1. given: Polygon P (set of points S)
2. determine Voronoi diagram of S
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 263
3.3 Geometric Generalization
3. determine intersection points of the Voronoi edges
and the polygon edges
4. consider resulting Voronoi skeleton:
5. choose an appropriate sequence of edges
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 264
3.3 Geometric Generalization
Properties:
− selection of an appropriate polyline from the
skeleton
− computation of the Voronoi diagram
+ results for all kinds
of polygons
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 265
3.3 Geometric Generalization
Example (polygon with 2000 points):
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 266
3.3 Geometric Generalization
visualization tool: [Me11]
• Procedure with rasterization, thinning, and re-vectorization
1. given: polygon P (set of points S)
2. rasterization of P
3. topological thinning of P (building a skeleton)
4. line following and re-vectorization
5. determine the longest path
6. line simplification
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 267
3.3 Geometric Generalization
Example
1. given: polygon P (set of points S)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 268
3.3 Geometric Generalization
2. rasterization of P
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 269
3.3 Geometric Generalization
visualization tool: [Bu11]
3. topological thinning of P
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 270
3.3 Geometric Generalization
visualization tool: [Bu11]
4. line following and re-vectorization
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 271
3.3 Geometric Generalization
visualization tool: [Bu11]
5. determine the longest path
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 272
3.3 Geometric Generalization
visualization tool: [Bu11]
6. line simplification
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 273
3.3 Geometric Generalization
visualization tool: [Bu11]
• Simplification of polygons
– Low-pass filter
– Douglas/Peucker (adapted)
Decompose polygon P into 2 polylines L1, L2 e.g. at the points
PL1, PL2 ∈ P, with maximum distance between each other
Simplify L1 and L2
Recombine resulting polylines at PL1 and PL2
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 274
3.3 Geometric Generalization
Example
polygon with points PL1, PL2 with maximum distance
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 275
3.3 Geometric Generalization
– Example
Douglas/Peucker (adapted)
city area of Braunschweig,
reduction from about 90 to about 30 points
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 276
3.3 Geometric Generalization
Further example
Douglas/Peucker (adapted)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 277
3.3 Geometric Generalization
g = 0.5 g = 1
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 278
3.3 Geometric Generalization
cartographically desired generalization
results with Douglas/Peucker (adapted)
– Douglas/Peucker reduces the number of polygon points
– Characteristic shapes are preserved (within certain limits)
– Good results with "natural" geometries (bogs, lakes, forests)
– Less satisfactory results with polygons with predominantly right angles (buildings), therefore
• Modification to preserve right angles and long edges
• E.g. Neumann/Selke [NeS01]
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 279
3.3 Geometric Generalization
• Geometric generalization (and displacement) of
building sketches is a challenging task
• Convenient results achieved by programs
• E.g. CHANGE, PUSH, TYPIFY [Se07]
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 280
3.3 Geometric Generalization
http://www.ikg.uni-hannover.de/
• Placement of all texts (labels) in the same way
results with high probability in overlappings (poor
readability)
• Therefore, it is necessary
to move, scale down,
rotate, or omit texts
• In the general case this is
a NP-hard optimization
problem
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 281
3.4 Label and Symbol Placement
http://www.laum.uni-hannover.de/ilr/lehre/Isv/
• Objectives of labeling
– Easily readable
– Unambiguity: each label must be easily identified with exactly one graphical feature
– Same facts are represented in the same way
– Different facts are represented differently
– Important facts are emphasized
– Important objects are never covered
– No uniform pattern (avoidance of raster effect)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 282
3.4 Label and Symbol Placement
http://www.mdc.tu-dresden.de/
• Text or label placement is divided into
– Point labeling • Positions to the right are preferred to those
on the left
• Labels above a point are preferred to those below
• E.g. cities with a horizontal label
– Line labeling
• Labels should be placed as straight as possible
• E.g. rivers with names
– Area labeling
• It must be clear what the total area is
• E.g. forest areas containing their names
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 283
3.4 Label and Symbol Placement
http://www.sprachkurs-sprachschule.com/
http://upload.wikimedia.org/
• For the three classes there are many specialized
algorithms, based on
– Greedy algorithm
• Labels are placed in sequence
• Each position is chosen
according to minimal
overlapping
• Acceptable results only for
very simple problems
• Very fast
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 284
3.4 Label and Symbol Placement
http://alitarhini.files.wordpress.com/
• Example
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 285
3.4 Label and Symbol Placement
– Local optimization
• The labels are checked several times
• On each pass a single label is repositioned an tested
• The position is kept, if the overall result improves
• Stop, if a local optimum is reached
• Suitable only for maps which relatively few labels
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 286
3.4 Label and Symbol Placement
– Simulated annealing
• Similar to local optimization, however yielding better results
• A placement of a label can be kept even though it (initially)
downgrades the overall result
• At first "high temperature", thus leaving local optima is
possible
• Later on ("low temperature") only
small changes are possible
• Challenges: a good evaluation function,
and a good annealing schedule
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 287
3.4 Label and Symbol Placement
http://www.hs-augsburg.de/informatik/
• Name and inspiration from annealing in metallurgy: controlled cooling of a material until it changes from liquid to solid
• Structure of the solid depends on „the cooling schedule“
– Fast cooling results in • Unordered solid
• Internal stresses
– Slow cooling results in • Ordered solid
• Low internal energy
• Macroscopic crystal lattice
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 288
3.4 Simulated Annealing
http://webuser.hs-furtwangen.de/~neutron/
• Example: SiO2
– Short range order: tetrahedron
– Crystalline form: Cristobalit
– Without long range order: Silica glass
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 289
3.4 Simulated Annealing
http://de.wikipedia.org/wiki/Glas
http://webuser.hs-furtwangen.de/~neutron/
Si O
• Elements
– Initial solution (liquid)
– Modifications (vibrations of molecules)
– Cooling schedule: Change of temperature over time
• Initial temperature
• Freezing point
– Weighting function (internal energy)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 290
3.4 Simulated Annealing
• Pseudocode:
– Usually the temperature is decreased after multiple changes
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 291
3.4 Simulated Annealing
T = initialTemperature; currentSolution = InitialSolution; while (T > freezingPoint){ newSolution = CHANGE(currentSolution); if (ACCEPT){ currentSolution = newSolution; } ANNEAL(T); }
– Decision if the new solution is accepted
• A better solution is always accepted
• Probability of accepting a worse solution depends on the
temperature and its cost
• Boltzmann factor: e-E/k*T ; k = 1,3806504(24) · 10−23
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 292
3.4 Simulated Annealing
ACCEPT{ Δ = EVALUATE(newSolution) – EVALUATE(currentSolution) if((Δ < 0) or RANDOM(0,1) < e-Δ/T)){ return true; } return false; }
• Example: label placement
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 293
3.4 Simulated Annealing
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.2327
• Initial solution: random label placement
• Weighting function
– Number of covered (or deleted) labels
– Consideration of cartographic preferences by
weighting of possible positions for point labels
• Modifications
– Move an arbitrary or covered label to a new position
– If cartographic preferences are considered an
arbitrary label should be moved
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 294
3.4 Simulated Annealing
2
4
1 5
6
8
7 3
• Cooling schedule:
– Initial temperature ca 2,47 → the probability of accepting that a solution whose cost are 1 higher is accepted is 2/3, i.e.: e-1/T = 2/3
– T = 0,1 * T
– T is decreased as soon as more than 5*n new solutions have been accepted (n is the number of objects)
– Search ends
• As soon as T has been decreased 50 times
• If none of 20*n new solutions in a row has been accepted
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 295
3.4 Simulated Annealing
• Result
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 296
3.4 Simulated Annealing
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.50.2327
• Symbol placement (point signatures) is just as
complex as text placement
• In the following two examples for special cases
– Displacement and placement of trees symbols in
TK25-like presentation graphics [NPW06]
– Placement of point signatures in polygons of buildings
for real estate maps [NKP08]
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 297
3.4 Label and Symbol Placement
• Displacement and placement of tree row symbols
– Roads as well as tree rows are given as polylines only in the digital landscape model 1:25.000 (DLM25)
– Placement of the tree symbols on the points of the tree rows does not result in an equidistant pattern
– The visualization of roads is much wider than the actual street width (depending on the type of the road (attribute: dedication, “Widmung”))
– The tree symbols are often hidden by the line signatures of the streets
– Thus, beside a coordinate transformation an alternative placement and a displacement is needed
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 298
3.4 Label and Symbol Placement
• One single road from the DLM25
(example, XML/GML encoding)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 299
3.4 Label and Symbol Placement
<AtkisMember> <Strasse> <gml:name> Badstrasse </gml:name> <AtkisOID> 86118065 </AtkisOID> <gml:centerLineOf> <gml:coord><gml:X>4437952.980</gml:X><gml:Y>5331812.550</gml:Y></gml:coord> <gml:coord><gml:X>4437960.070</gml:X><gml:Y>5331818.450</gml:Y></gml:coord> <gml:coord><gml:X>4437967.200</gml:X><gml:Y>5331825.410</gml:Y> </gml:coord> </gml:centerLineOf> <Attribute> <Zustand> in Betrieb </Zustand> <AnzahlDerFahrstreifen Bedeutung=“tatsaechliche Anzahl”> 2 </AnzahlDerFahrstreifen> <Funktion> Strassenverkehr </Funktion> <VerkehrsbedeutungInneroertlich> Anliegerverkehr </VerkehrsbedeutungInneroertlich> <Widmung> Gemeindestrasse </Widmung> </Attribute> </Strasse> </AtkisMember>
• A tree row from the DLM25
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 300
3.4 Label and Symbol Placement
<AtkisMember> <Baumreihe> <gml:centerLineOf> <gml:coord><gml:X>3524258.170</gml:X><gml:Y>5800238.690</gml:Y> </gml:coord> <gml:coord><gml:X>3524256.190</gml:X><gml:Y>5800220.270</gml:Y> </gml:coord> <gml:coord><gml:X>3524255.240</gml:X><gml:Y>5800196.070</gml:Y> </gml:coord> ... <gml:coord><gml:X>3524581.650</gml:X><gml:Y>5799674.000</gml:Y> </gml:coord> </gml:centerLineOf> <Attribute> <Vegetationsmerkmal> Laubholz </Vegetationsmerkmal> </Attribute> </Baumreihe> </AtkisMember>
• Direct visualization
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 301
3.4 Label and Symbol Placement
• Simple displacement procedure
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 302
3.4 Label and Symbol Placement
for all t : treeRow do begin if exists s : street (distance(t,s) ≤ minDistance(s.dedication)) then for all p : t.coord do begin r := refSegment(s,p); move(p,r) end do end if end do;
• Visualization with displacement
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 303
3.4 Label and Symbol Placement
• Placement procedure
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 304
3.4 Label and Symbol Placement
for all t : treeRow do begin l := length(t.centerLineOf); n := ⌊l/distanceConst⌋ + 1; t’ : new treeRow; for i=1 to n do begin computePoint (t’.coord[i], t.centerLineOf, distanceConst) end do end do;
• Visualization with displacement and placement
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 305
3.4 Label and Symbol Placement
• Placement of point signatures in polygons of buildings
– Derivation of the real estate map (1:1.000) from ALKIS
inventory data extracts relatively straight forward
– No generalization and no displacement is needed
(topographic planimetry, "cadastral map")
– Representation of buildings, parcels, border points, etc.,
with the given signature library and the derivation rules
– E.g. symbolisation of buildings as colored polygons with a
boundary line and a typical point signature depending on
the attributes building function (Gebäudefunktion) and
further building function (weitere Gebäudefunktion)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 306
3.4 Label and Symbol Placement
• A building from an ALKIS inventory data extract
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 307
3.4 Label and Symbol Placement
<gml:featureMember> <AX_Gebaeude gml:id="DEHHSERV00001FN1"> ... <position><gml:Polygon> <gml:exterior><gml:Ring> ... <gml:pos>3567807.047 5930017.550</gml:pos> <gml:pos>3567810.850 5930024.755</gml:pos> ... <gml:pos>3567807.047 5930017.550</gml:pos> ... </gml:Ring></gml:exterior> </gml:Polygon></position> <gebaeudefunktion>2000</gebaeudefunktion> <weitereGebaeudefunktion>1170</weitereGebaeudefunktion> <bauweise>2100</bauweise> <anzahlDerOberirdischenGeschosse>1 </anzahlDerOberirdischenGeschosse> </AX_Gebaeude> </gml:featureMember>
• For many point signatures which are related to buildings so-called presentation objects are supplied in the inventory data, defining the optimal position of the respective signature (given in "world coordinates")
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 308
3.4 Label and Symbol Placement
<gml:featureMember> <AP_PPO gml:id="DEBWL00100000fAW"> <lebenszeitintervall>... </lebenszeitintervall> <modellart>... </modellart> <anlass>000000</anlass> <position> <gml:Point><gml:pos>3540847.175 5805897.864</gml:pos></gml:Point> </position> <signaturnummer>3316</signaturnummer> <dientZurDarstellungVon xlink:href="urn:adv:oid:DEBWL00100000jwR"/> <drehwinkel>67.000</drehwinkel> </AP_PPO> </gml:featureMember>
• But some buildings lack the presentation objects
• An obvious, easily determined position for the
signature:
– Choose the center of the smallest axis parallel
rectangle, which encloses the polygon of the building
– min(x1, ..., xn)+((max(x1, ..., xn)−min(x1, ..., xn))/2),
– min(y1, ..., yn)+((max(y1, ..., yn)−min(y1, ..., yn))/2)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 309
3.4 Label and Symbol Placement
• Unfortunately, the results are not always satisfactory
• Therefore, heuristic procedure, based on
– Convexity
– (approximate) symmetry points
– (approximate) symmetry axis
– Various quality criteria
– Discrete increments
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 310
3.4 Label and Symbol Placement
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 311
3.4 Label and Symbol Placement
if polygon of building convex: choose centroid if signature frame fits completely in polygon of building: place there otherwise choose appropriate point with the smallest distance to the centroid else if symmetry point in polygon of building: place there otherwise further procedure with symmetry axes
⇒ generation of a new presentation object with "optimal" positioning coordinates
• The procedure is not suited for the placement of
signatures for churches/chapels
– Besides the determination of an appropriate position
– Also the signatures alignment to the shape of the
building’s polygon is needed
– An alignment to the north south axis is rarely optimal
– Crosses for churches as parallel as possible to the
churches naves
– Crossbrace of cross should be
placed in the transept
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 312
3.4 Label and Symbol Placement
• Heuristic procedure
– Determine a preferable large cross that just fits in the
building’s polygon
– Proportions of the large cross and the church
signature are the same
– If the large cross is found, place the signature just in
the intersection point
• For this purpose first simplify the building’s
polygon
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 313
3.4 Label and Symbol Placement
• In several rotation angles: look for a preferable large, well placed cross
– Restriction of the potential rotation angles and positioning points (e.g. consider minimum distance to boundaries of the building’s polygon)
– Evaluate all appropriate crosses within a rotation angle
– Evaluate all the best crosses (e.g. lengths of the crosses, alignments)
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 314
3.4 Label and Symbol Placement
• Placement of the signature in the best cross of all
rotation angles
⇒ Generation of a new presentation object with
"optimal" positioning coordinates and
"optimal" rotation angle
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 315
3.4 Label and Symbol Placement
• Both methods applied to inventory data extracts
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 316
3.4 Label and Symbol Placement
• Mapping of spatial data
– Topographic map
– Thematic map
• Properties of maps
– Graticule
– Projections
– Gauß-Krüger coordinate system
– Body of map, map frame, map margin
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 317
3.5 Summary
• Signatures, text, color
– Point signatures
– Line signatures
– Area signatures
– Derivation rules
– TK25, real estate map
• Geometric generalization
– Smoothing of polylines
– Simplification of polylines
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 318
3.5 Summary
– Douglas/Peucker algorithm
– Polygon to polyline conversion
– Simplification of polygons
– Geometric generalization of building’s ground plans
• Text and symbol placement
– Methods for text placement
simulated annealing
– Displacement and placement of symbols for tree rows
– Placement of point signatures in building’s polygons
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 319
3.5 Summary
2
4
1 5
6
8
7 3
Spatial Databases and GIS – Karl Neumann, Sarah Tauscher– Ifis – TU Braunschweig 320
3.5 Summary
GIS graticule
map
text signatures
color
collect
manage
analyse
display
generalization
area labelling
simplifying lines
polygon→ line
design elements
placement
topographic
thematic
building signatures
tree rows as optimization problem