440 likes | 731 Views
Representation of spatial data. GIS thematic layers, raster and vector, conversi on , subdivisi on representation, continu ous data: contours, DEMs, TINs. Thematic map la yers. Separate storage of data according to them e : map la yers
E N D
Representation of spatial data GIS thematic layers, raster and vector, conversion, subdivision representation, continuous data: contours, DEMs, TINs
Thematic map layers • Separatestorageof data according to theme: map layers • GIS typically use tens to hundreds of map layers • For example: municipality borders, land use, cadastral boundaries, water pipes, churches, etc.
Examplemap layers Census data, 1995 (U.S.A.)
Geometry, topologyand attributes • Geometry: coordinates • Topology: adjacency relations of objects • Attributes: properties, values Example: CountrymapofSouth America Geometry: coordinatesof the bordersTopology: whichcountries border which Attributes: namesofcountries, population, etc.
Representationof geometry • Twomain approaches: raster and vector • Can also be mixed in a GIS, anymap layer • Conversion raster-vector and vice versa possible • Representationdepends ontype of data, way ofacquisition, desired operations, etc.
Rasterstructure • Division of space intoequal-size cells (squares, pixels) • Themegives cellsavalue (nominal, ordinal, interval, ratio, vector, …) • Cellsshould not contain any furtherspatialinformation (more detail)
Data in raster form Point object in raster form Line object in raster form Plane object in raster form
Simple structure Simple operations Obtained after scanning, remote sensing Less suitablefor point and line objects: representationdoes not follow intuition Networkanalysisdifficult Not adaptive: no difference in detail possible in different regions Eitherexpensive in memory, orlittle precision Not obtained after digitizing Raster: pros and cons
Raster: memory reduction • Run-length encoding: no 2-dim array but coding start pixel withvalue and lengthofrun • Block encoding: 2-dim version • Disadvantage: makes structureand operationsmuch morecomplex (34,67) forest 9 (34,67) forest 4,6
Vectorstructure • Objectsstored as points, linesandareas • Points have coordinates; linesconnect points; areas are delimited by lines • Attributesare stored with the objects (point, line orareal)
Elegant structure; fits withboth point, lineand areal objects Small storage consumption Precise Adaptive: additional controlpointspossible Network and clusteranalysispossible Obtained after digitizing Relatively complex Map overlay and buffer computation complex Vector: pros and cons
Vector representation of a region • Not necessarily simply-connected: • NL has islands • NL has holes(Baarle-Nassau / Baarle-Hertog); there are even regions in these holes
Subdivisions: spaghetti model • Every chain is represented by a list with coordinate pairs • Splitnodesare doubly stored • Areas are not present explicitly C1 C2 C5 C4 C3 C6 C1: (..,..), (..,..), (..,..), ... C2: (..,..), (..,..), (..,..), ... C3: (..,..), (..,..), (..,..), ...
Subdivisions: polygon ringstructure • Every area is represented by a list with coordinate pairs • Controlpointsare doublystored • Neighbor areas aredifficult to determine • Consistency is difficult to maintain P1 P2 P3 P1: (..,..), (..,..), (..,..), ... P2: (..,..), (..,..), (..,..), ... P3: (..,..), (..,..), (..,..), ...
Subdivisions: topological structure • Nodes are objectswith coordinates • Edges are connectionsof nodes • Sequences of edges along polygon boundaries form cycles • Polygons are objects that can access their boundaries Doubly-connected edge list
Subdivisions: topological structure • Edges are split into directed half-edges • Half-edges have pointers to • Twin half-edge • Origin vertex • Next and Prev half-edges of incident polygon • Incident polygon • Polygons have pointers to half-edges, one in each bounding cycle Origin polygon Twin Prev Next polygon
Subdivisions: topologicalchain structure • Splitting nodes are objectswith coordinates • Chains are connections of splitting nodes and contain zero or morenodes with coordinates • Sequences of chains along polygon boundaries formcycles • Polygonsare objects that can access their boundaries half-chains Doubly-connected chain list
Memory Duplication Polygon Topology retrieve retrieve Vectorstructures Spaghetti ++ + -- -Polygon ring - -- ++ -DC edge list -- ++ - +DC chain list ++ ++ + ++
Raster-vector conversion E.g. for data integration • Vector-to-raster: Like in computer graphics: scan-conversionof lines, etc. • Raster-to-vector: Consider pixel sides between pixels with different values as boundary and put in vectorrepresentation Thinning, line simplification
Thinning Raster-vector conversion Thinning
Line simplification • Douglas-Peucker algorithm from 1973 • Input: chainp1, …, pnanderror p1 pn
DP-algorithm • Draw line segmentbetween first and last point • If all points in between are within error: ready • Otherwise, determine farthest point and recursively continueon the part until farthest point and the part afterfarthest point
DP-algorithm DP-standard(i, j, ) Determine farthest point pkbetween piandpj Ifdistance(pk, pi pj) > then DP-standard(i, k, ) DP-standard(k, j, ) Return the concatenationof the simplifications
Properties of the DP-algorithm • DP-algorithm does not minimizethe number of points in the simplification DP-algorithm Optimal
Properties of the DP-algorithm • Determining farthest point takesO(n) time • Whole algorithm takesT(n) = T(m) + T(n-m+1) + O(n),T(2) = O(1) time,splitting in m and n-m+1 points • “Fair” split givesO(n log n) time • Worst case gives quadratic time
Properties of the DP-algorithm • DP-algorithm may giveself-intersections in the output Solution: test output forself-intersectionsand continue adding controlpoints if necessary
Improved DP-algorithm DP-improved(i, j, ) Simp = DP-standard(i, j, ) V = set ofintersecting segmentsofSimpRepeat For all segments s VRefine(s) in Simp Do 1 refinementà la DP by adding the farthest pointV = set of intersecting segmentsofSimpUntilV is empty
Continuous data representation Digital Elevation Model (DEM) • Data on interval or ratio measurement scale • Data values of points near by will usually be not very different • Representation is necessarily an approximation:finite representation of information with infinite detail • Raster (1x) or vector (2x)
Elevation models Raster Vector Vector 21 20 21 20 15 19 20 25 10 10 (Elevation) grid Contourlinemodel Triangulation(TIN; triangulatedirregular network)
Elevation models • Contourmodel well-suited for visualisation, not for representation or storage • Interpretations grid:- elevation whole cel: not a continuous model- elevation middle cel: interpolation needed; how? • Advantage grid: simple storage, operations simple too • Advantage TIN: more efficient in storage, adaptive
20+18+18+22 = 19.5 4 Interpolation for grid 20 20 18 18 22 18 18 22 18 20 Linear interpolation; saddle point problem 18 22 20 20 18 18 22 22 18 18 Linear interpolation;additional point Non-linear interpolation
Topological TIN structure • With explicit vertex and triangle representation t2 w t3 t1 t1 t2 t t v u u w t3 v x, y-coordinatesandelevation
Topological TIN structure • With explicit vertex and triangle representation t2 w t3 t1 t1 t2 t t v u u w t3 v Because t1 has pointers to two the same vertices as t, we can determine their shared edge, even though it is not represented explicitly
t Topological TIN structure • With explicit vertex and triangle representation w w t1 t2 t2 t1 t v u t3 v u t3
w t1 e1 t u e3 Topological TIN structure • Alternatively, edges have an explicit representation too w t1 t2 t e1 e2 e2 e3 v u t3
Summary representation • Objects have geometry and attributes, at least the attributes are in a database • Geometry can be stored in raster or vector form; each has advantages and disadvantages • Important geometric types of representations are those for subdivisions and for elevation models • For subdivisions, the doubly-connected chain list is the most suitable structure • For elevation models, grids or TINs are most useful